OS Xホストで、ディレクトリ「foo」の削除に問題があります。
mymac:.Trashes joe$ ls
foo
mymac:.Trashes joe$ ls foo/
Ảnh011.jpg Ảnh012.jpg Ảnh013.jpg
mymac:.Trashes joe$ ls -l foo/
ls: Ảnh011.jpg: No such file or directory
ls: Ảnh012.jpg: No such file or directory
ls: Ảnh013.jpg: No such file or directory
mymac:.Trashes joe$ rm -rf foo/
rm: foo/: Directory not empty
mymac:.Trashes joe$ Sudo rm -rf foo/
Password:
rm: foo/: Directory not empty
ご覧のとおり、ディレクトリ「foo」の下には、ls
でしか実行できないファイルがいくつかあります。ランニング ls -l
はエラーを返します。個々のファイルやディレクトリを削除できません。 「空のごみ箱」の使用も機能しませんでした。 「ディスクユーティリティ」->「ディスクの確認」と「ディスクの修復」も試しました。
編集:要求に応じて、ここに詳細があります
mymac:.Trashes joe$ ls -del foo/
drwxrwxrwx 2 joe staff 16384 13 May 11:19 foo/
mymac:.Trashes joe$ ls -del foo
drwxrwxrwx 2 joe staff 16384 13 May 11:19 foo
mymac:.Trashes joe$ LC_ALL=C
mymac:.Trashes joe$ ls -ABeli foo/
total 1812
18972612676 -rwxrwxrwx 1 joe staff 305951 13 May 11:19 Ảnh011.jpg
19123958587 -rwxrwxrwx 1 joe staff 309745 13 May 11:19 Ảnh012.jpg
18511775654 -rwxrwxrwx 1 joe staff 310907 13 May 11:19 Ảnh013.jpg
mymac:.Trashes joe$ find foo/
foo/
foo//Ảnh011.jpg
foo//Ảnh012.jpg
foo//Ảnh013.jpg
どういうわけか、ファイルの有効なノードにリンクしていないエントリ名がfoo
にあるようです。それがどのように起こり得るのか、なぜrm -rf
は、削除したとしても、ディレクトリからエントリを削除しませんでした。
しかし、おそらくディレクトリエントリを有効なファイルノードに関連付けると、削除されますか?言い換えれば、多分これ?
touch foo/Ảnh011.jpg
rm foo/Ảnh011.jpg
うーん。他の誰かが//
以下の結果では、まあ、予想外ですか?
mymac:.Trashes joe$ find foo/
foo/
foo//Ảnh011.jpg
foo//Ảnh012.jpg
foo//Ảnh013.jpg
以下のようになると思いました。 //
(それが何であれ)問題の手がかりになっていますか?
foo/Ảnh011.jpg
foo/Ảnh012.jpg
foo/Ảnh013.jpg
最初にファイルの名前を変更してみましたか?ファイルの先頭には「Ả」という特殊文字が付いています。最初にファイルの名前を変更してから、削除してみてください。
上記の返信は良いですが、知っておくべきことがもう1つあります。
デフォルトでは、「ls」(または「ls -l」)は、名前が「。」で始まるファイルを表示しません。 (別名「ドットファイル」)
すべてのファイルが表示されるようにするには、「ls-a」を使用します。
'。'で始まる他のファイルがあるかどうかは定かではありませんが、可能です。 'foo /'で、それが空ではない理由です。
そうは言っても、それらは '/ bin/rm -rf foo'で削除されるべきだったので、そのディレクトリには他の問題がなければなりません。
このコマンドでファイルを削除してから、フォルダを削除してみてください。
find . -iname '*.jpg' -exec rm {} \;