たびに私rmシェルがグロブと少しでも可能性パターンが膨張し、私はそれが期待する以上のことがありますと一度に複数の項目、私はいつも追加することを忘れないようにしようとし-iたが、(もちろん)私は忘れ、誤って有益な何かを吹き飛ばすことができます。エイリアスを使用してこの問題を解決しようとする人もいますが、alias rm='rm -i'rmを常に対話型にするという考えは嫌い-fです。
私がやりたいのは、グロビングを使用rmする-iときにのみ使用し-f、もちろんオーバーライド-iすることrm -rf junkです。そのため、通常のでディレクトリ全体を吹き飛ばすことができます。
したがってrm *blah*、実際にはそうですrm -i *blah*がrm blah、入力したとおりに動作します。
異なるシェルでこれを達成する方法に違いがある場合、どちらか一方のみをカバーする回答よりもbash と zshの両方のメソッドを提供する回答を選択します。
注:私は実際にこれは必ずしも良いアイデアです確信していません。私はそれが可能かどうかを尋ねているだけです。これが馬鹿げた考えだと思うなら、あなたの意見の背後にある理由を聞いてとてもうれしいでしょうが、そのようなコメントを回答フィールドに投稿しないでください。本当の答えは、これを行う方法を教えてくれるか、それが不可能な理由を説明します(または、同様の結果を得るための代替方法を提供する可能性があります)。しかし、なぜこれが愚かであるかを私に伝えたい場合は、コメントとして投稿してください。結論に同意しなくても、理にかなったコメントを支持します。
noglobへのrmをエイリアシングにより、例えばnoglob my-rm、その後、私の-RMはグロブをチェックすることをスクリプトであるた、それを展開し、-iか渡します。わからない、zshを知らない。
myrmて、そのスクリプトにすばらしいことをさせてください。
rm -Iは-i、3つ以上のファイル-rが渡されたとき、または渡されたときにのみトリガーするようなものです。でbash、Ctrl-x *キーボードショートカットを使用してグロブを展開し、自分で調べます。