2011-10-12 19:28:12 +0000 2011-10-12 19:28:12 +0000
94
94

質問なしでファイルを削除する

ユーザーにファイルの削除に同意するかどうかを質問せずにファイルを削除するにはどうしたらいいですか?シェルスクリプトを書いていて、rm関数を使っているのですが、「通常のファイルを削除しますか?ありがとうございます。

回答 (12)

107
107
107
2011-10-12 19:30:00 +0000

あなたはrmrm -iにエイリアスしているかもしれないので、次のようにしてみてください:

/bin/rm -f file.log

あなたのエイリアスを確認するには、aliasを実行してください。

61
61
61
2011-10-12 19:30:22 +0000

force フラグはすべてのプロンプトを削除します。

34
34
34
2011-10-12 19:30:10 +0000

力があなたと共にありますように - rm -f

6
6
6
2011-10-12 20:52:48 +0000

yesプログラムは、どんなプロンプトに対しても繰り返し「はい」と答えるので、それをインタラクティブなrmプログラムにパイプして、望ましい効果を得ることもできます。

5
5
5
2016-07-28 12:15:27 +0000

001

バックスラッシュ `001

バックスラッシュ はエイリアスをバイパスします。

5
5
5
2011-10-12 20:13:31 +0000

シェルスクリプト内では、rm -f <filename>を使用したいと思うでしょうが、シェル(またはプロファイル)で-iを入力することで、環境に対する暗黙のunalias rmオプションを削除するオプションもあります。

5
5
5
2011-10-12 19:31:52 +0000

あなたがファイルを削除するために必要な権限を持っており、プロンプトが表示されたくない場合は、次のようにしてください(-f = force):

rm -f file

あなたがファイルに権限を持っていない場合は、次のように使用する必要があります:

sudo rm -f file
1
1
1
2017-03-26 13:45:49 +0000

パラメータ -f を使用する以外にも、代わりに find コマンドを使用することもできます。

0
0
0
2018-03-29 14:28:49 +0000

あなたのrmrm -iにエイリアスされている場合は、unalias rm;

本当にたくさんの書き込み保護されたファイルを削除したい場合以外は、rm -fを直接使用しないでください。

しかし、書き込みで保護されたファイルをたくさん持っている場合は、より速いスピードを求めるならば、-fを使う方がいいかもしれません。

0
0
0
2019-09-02 14:37:41 +0000
rm -Rf <folder-to-be-deleted>

-R: 再帰的 f: 強制、プロンプトなし

0
0
0
2015-02-25 12:18:42 +0000

現在、私はシステムで働いていますが、bashシェルがグローバル設定ファイルの1つに関数としてrmコマンドの定義を受信しています:

rm () { /bin/rm -i ${1+"$@"}; }

したがって、エイリアスに関する上記の回答のどれも動作しませんでした。迷惑な動作に対抗するために、.bashrcファイル

unset -f rm

でrm関数をアンセットしましたが、同様の問題がありました。しかし、rmがシェル関数によって隠されている可能性について言及した回答は見つかりませんでした。

0
0
0
2019-08-12 07:47:40 +0000

私のお気に入りの方法は、commandを使うのと同じように、単にbashでsudoコマンドを使うことです。これは、/bin/rm でコマンドを実行するのと同じように、エイリアスなしでコマンドを実行します (おそらく rmrm -i としてエイリアスされています)。

例:

command rm -f /tmp/file.txt