zshでデュアルRMをチェック

zshでデュアルRMをチェック

zsh で rm* を実行すると、次のメッセージが表示されます。

2014-06-08 10:14:23 $ rm *
zsh: sure you want to delete all the files in /home/assay/assay/log [yn]? y
rm: remove regular file `development.log'? y

まず、zshはすべてのファイルを削除したいかどうか尋ね、rmは各特定のファイルを要求しました。

zsh認証はどのようにできますか?

答え1

「zsh:すべてのファイルを削除しますか?」メッセージは、rmglob拡張または以前の引数を使用してコマンドを呼び出してトリガーされるzshの機能です。次のコマンドを使用してこの機能をオフにすることができます*something/*setopt rm_star_silent

「rm:一般ファイルの削除」というメッセージは、rmコマンド自体から来ます。デフォルトでは表示されず、rmoptionsで呼び出されたときにのみ表示されます-i。このメッセージを望まない場合は、このオプションを渡さないでください。それ以外の場合でも、-i読み取りrm専用ファイルを削除しようとすると(他のメッセージと共に)確認メッセージが表示されます。オプションを渡すことでこの確認を削除できます-f

-iコマンドラインから渡されなかったので、エイリアスにすることができますrmrm -i関数、非標準ラッパーコマンド、または別のエイリアスかもしれませんが、エイリアスはrm -i最も合理的です)。一部のデフォルト設定はシェル初期化ファイルに含まれていますalias rm='rm -i'。これは、ディストリビューションやシステム管理者が設定したもの、またはどこかからインポートして設定ファイルに追加した後に忘れたものです。~/.zshrcエイリアス定義を確認してくださいrm。見つかったら削除してください。見つからない場合は、エイリアスを削除するコマンドを追加します。

unalias rm

答え2

2段階認証を無効にする正しいコマンドはsetopt rm_star_silent。 2段階認証を有効にするには、次の手順を実行しますsetopt no_rm_star_silent

詳細については、zshoptionsのマニュアルページを参照してman zshoptionsください。http://linux.die.net/man/1/zshoptions

答え3

理由はわかりませんが、次は私にとって効果的です。問題ありません。

rm -f **

またはディレクトリが関連する場合:

rm -rf **

答え4

oh-my-zsh を使用する場合、汎用エイリアスプラグインに rm -i エイリアスが含まれます。

https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/common-aliases/common-aliases.plugin.zsh

関連情報