
*
の下にという名前のフォルダーがあるとします/
。rm -rf * などの一般的なコマンドは機能しないことはわかっています。何か助けはありますか?
答え1
次の短いコマンドを使用します:
rm /\*
答え2
シェルによる処理を防ぐために、引数を一重引用符で囲むことができます。
rm -r '/*'
以下を使用して安全にテストしますls
(ファイルを含むフォルダー内):
$ ls '*'
ls: *: No such file or directory
この場合、二重引用符も機能しますが、 が含まれている場合は$
、シェルがそれを変数であると想定するため、二重引用符は機能しません。
$ ls "foo$bar"
ls: foo: No such file or directory
$ ls 'foo$bar'
ls: foo$bar: No such file or directory
GNU の場合、ファイル名引数の前にrm
を追加して、引数として解析されないようにすることもできます。これにより、問題なく指定されたファイルを削除できるようになります。--
-rf