ファイルの一覧表示と削除方法の最適化

ファイルの一覧表示と削除方法の最適化

.php、.xmlファイルを一覧表示して削除する必要があります。そのために私はfindコマンドを使用します。

リスト: find . -type f -name \*.php -print0

削除: find . -type f -name \*.php -print0 | xargs -0 rm -r

二度走ったときfind。最初のコマンドの結果を保存してから、2番目のコマンドで再利用できますか?

ありがとうございます。

ベストアンサー1

find . -type f -name '*.php' -print0 | tee list | tr \\0 \\n
xargs -r0 rm -f < list

リストを削除することを決定する前に、リストを確認したいとします。そうでない場合は、単に次のことができます。

find . -name '*.php' -type f -print -delete

-print0(、、、-deleteは標準ではありませんが、GNU実装でサポートされていることに注意してください-r-0

また、比較的安全ですが、最初のソリューションでは、誰かとfind -deleteコマンドを実行している間にいくつかの機密領域へのシンボリックリンクでディレクトリ名を変更し、削除したくないファイルを削除することができます。これを防ぐには、2回実行して2回目に実行してください。findxargsfind-delete

おすすめ記事