次のコードがあります。
find ./ -iname '*phpmyadmin' -exec rm -rf {} \;
というディレクトリを削除phpmyadmin
しますが、確かに名前付きファイルの削除phpMyAdmin-Version-XYZ.zip
削除しても-rf
まだ削除されません(おそらく-inameが大文字と小文字に影響しない2番目の問題が原因である可能性があります)。
- 単一のrm(ファイル、ディレクトリ、ソフトリンク)からinodeを削除する方法はありますか?
- 追加しても
-iname
効果がないのはなぜですか?
注:.NETで「すべてのinodeを削除」パラメータが見つかりませんman rm
。
ベストアンサー1
phpmyadmin
問題は(で終わるファイルを一致させていることです。大文字と小文字を区別しない)パターンを使用して*phpmyadmin
。この文字列を含むファイルを取得するにはphpmyadmin
(大文字と小文字を区別しない)、次のようにします-iname '*phpmyadmin*'
。
find ./ -iname '*phpmyadmin*' -exec rm -rf {} \;
おそらく、削除する前に一致するファイルを取得するのが賢明かもしれません。
find ./ -iname '*phpmyadmin*'
最初の質問に答えるには、ユーザースペースにinodeを処理するオプションはありませんrm
。