最近、「!」がたくさん入っているエコーに気づきました。奇妙なものになります。例えば: echo !!
私に与える:
echo rm -r * 1000
rm -r * 1000
(rm -r *
は、入力する前に実行した最後のコマンドでした)。なぜこれが起こっているのですか、それを無効にする方法はありますか?
Shell expansion
に遭遇しました-シェルはコマンドを解析し、特別なワイルドカードを他の情報に置き換えます。 echo '!!'
(一重引用符)を試して、シェルの拡張と引用符で何ができるかを理解してください。
シェルの拡張について詳しくは、man
のbash
ページをご覧ください。 history Expansion のセクションに注意してください。これはevent designators
のような!!
について説明し、 expansion は他の形式のシェル拡張について説明します。 quoting のセクションでは、bashの引用メカニズムの動作と、一重引用符と二重引用符の文字列の評価方法の違いについて説明します。