wordpress-891.sql
(サブディレクトリ内ではなく)現在のディレクトリから似たようなファイルを削除したい。
ウィルrm wordpress-*.sql
トリックを行うか、それはまた、サブディレクトリから一致するものを削除しますか?
rm
ファイル名の展開を行いません... rm "foo*"
名前にリテラルアスタリスクを含むファイルを削除しようとします。
wordpress-891.sql
(サブディレクトリ内ではなく)現在のディレクトリから似たようなファイルを削除したい。
ウィルrm wordpress-*.sql
トリックを行うか、それはまた、サブディレクトリから一致するものを削除しますか?
rm
ファイル名の展開を行いません... rm "foo*"
名前にリテラルアスタリスクを含むファイルを削除しようとします。
回答:
はい、それはあなたのためのトリックを行い、現在のディレクトリ内のそのスキーマを持つすべてのファイルを削除します。いいえ、サブディレクトリ内のファイルは削除されません。
次のようなコマンドを実行するとどうなるかわからないときはいつでも:
rm wordpress-*.sql
次に、それを使用して実行しls
ます:
ls wordpress-*.sql
出力に表示されるファイルは、削除されるファイルです。
次のようなリストを取得しようとしfoo*
ている場合、-d
switch with ls
を使用して、etcという名前のディレクトリにファイルがリストされないようにすることをお勧めしますfoobar/
。
ls -d foo*
このトリックは、ジョブを再帰的に実行するために使用されないコマンドに対して機能します。
他にできることは、希望する入力を入力することです。たとえばwordpress-*
、次にCtrl+ Alt+を押す*と、すべての一致がコマンドの前に自動的に入力されます。
printf "%s\n" wordpress-*.sql
echo rm file*
ます。特に、のような敵対的なファイル名を探してください-rf
rm ./*
またはのいずれかを使用して、これらをより安全にカバーできますrm -- *
。
xargs -0
@DavidFoerster
ls foo*
、というディレクトリがあるfoobar
場合、そのディレクトリの内容のリストも取得するため、プレーンls
はrm
ヒットするものに最適な方法ではありません
いいえ、rm
サブディレクトリを再帰しません。
サブディレクトリ内のファイルを削除する方法については、すべてのサブディレクトリ内の一致するファイルを削除する-SuperUserを参照してください。
何か重要なものを誤って削除することが心配な場合は、gvfs-trash
(ファイルrm
を完全に削除する)の代わりに(ファイルをゴミ箱に送る)を使用してください。
gvfs-trash
、今日はほとんどそれを使用しない言及学んだ何か...
などの一致するすべてのファイルを見つけて削除するwordpress-*.sql
場合は、find
コマンドを使用できます。:)
たとえば、wordpress-*.sql
アンダーtest_dir
で一致するすべてのファイルを削除するには、次のようにします。
cd test_dir
find . -name "wordpress-*.sql" -exec rm -f {} \;
find
プログラムが実際に一致するファイルを見つけるたびに、-exec
オプションの後のコマンドを実行しようとします。この場合rm -f {}
、実行{}
され、一致するファイル名に変更されます。例えば
rm -f wordpress-169.sql
-maxdepth
オプションでサブディレクトリの深さを設定することもできます。
cd test_dir
find . -maxdepth 3 -name "wordpress-*.sql" -exec rm -f {} \;
-maxdepth
他のオプションの前にオプションを指定する必要があることに注意してください。そうしないと、実際に見たくない結果に出会う可能性があります。
-maxdepth
ます。使用するの-exec rm -f {} +
ではなく-exec \;
、さらに良い、ちょうど-delete