ディレクトリを削除できません。存在しませんか?

ディレクトリを削除できません。存在しませんか?

どういうわけか、sftp 経由でログインしたときにこのフォルダーが作成されました。

"Sep 19 18:50 "

sftp経由で削除しようとしました。

SSHでログインし、rootとしてrm -rfで削除しようとしました

Error:  rm /home/user/Downloads/manual/Sep 19 18:50  : no such file or directory

i ls -al ならそこに表示されます。

root@ndsdsd:/home/user/Downloads/manual# ls -al
total 32
drwxrwxr-x 3 keelan keelan  4096 Sep 19 18:50
drwxrwxr-x 3 keelan keelan 12288 Sep 20 07:56 .
drwxr-xr-x 8 keelan keelan 16384 Sep 19 23:11 ..

答え1

というファイルは実際には存在しないと思いますSep 19 18:50

新しいフォルダを作成し、そのフォルダ内にtmp1 つのファイルを作成しました。次に、に入り、に移動し、 を実行しました:foosftpcdtmpls -l

drwxrwxr-x    2 ek       ek           4096 Sep 19 19:39 .
drwxr-xr-x   30 ek       ek           4096 Sep 19 19:39 ..
-rw-rw-r--    1 ek       ek              0 Sep 19 19:39 foo

すべてのエントリに日付と時刻が表示されていることに気づくでしょう。これはエントリの名前の一部ではなく、エントリが最後に変更された時刻としてマークされているだけです。

名前はその右側にスペースで区切られて表示されます。つまり、エントリは 3 つあります。

  • foo、私が作成したファイル。

  • ..、これはディレクトリ (つまり、1 つ上のフォルダ):

    sftp> pwd
    Remote working directory: /home/ek/tmp
    sftp> cd ..
    sftp> pwd
    Remote working directory: /home/ek
    

    ( にいる場合を除きます。ディレクトリ ツリーには/それより上には何もありません。その場合のみ、 はと同じディレクトリを表します。)/...

  • .、これは現在ディレクトリ (つまり、現在いるディレクトリ)。

    sftp> cd tmp
    sftp> pwd
    Remote working directory: /home/ek/tmp
    sftp> cd .
    sftp> pwd
    Remote working directory: /home/ek/tmp
    

lsフラグが指定された場合(またはコマンドラインで明示的に名前または一致するパターンを指定した場合)にのみ、.およびエントリを表示します。これは、コマンドのとの両方に当てはまります。..-alslssftpls通常のシェルプロンプトを使用した完全なログインセッションで発行されたコマンド。

答え2

の出力を誤解していますls。実際のディレクトリ名は で..、これはファイル システムをナビゲートするために使用される特別なディレクトリです ( cd ..1 レベル上に移動するために入力する場合など)。すべてのサブディレクトリに 1 つあります。は、Sep 19 18:50ディレクトリの作成日です。

答え3

スペースが原因だと思います。これを試してください:

sudo rm -rf "/home/user/Downloads/manual/Sep 19 18:50"

答え4

root@dsadwsd:/home/user/Downloads/manual# ls -al
total 32
drwxrwxr-x 3 keelan keelan  4096 Sep 19 18:50
drwxrwxr-x 3 keelan keelan 12288 Sep 20 07:56 .
drwxr-xr-x 8 keelan keelan 16384 Sep 19 23:11 ..

ハイライトしたとき:

drwxrwxr-x 3 keelan keelan  4096 Sep 19 18:50

最後にスペースがありました。そこで次のようにしました:

root@dsadwsd:/home/user/Downloads/manual# rm -rf " "

これにより、フォルダーが削除されました。フォルダー名が空白 (スペース) ではなく、フォルダーの作成日になっているのは奇妙です。

これを再現するには、名前にスペースを含む新しいフォルダーを sftp 経由で作成し、フォルダー名を作成日に変更します。

助けてくれてありがとう!

関連情報