bash 命令参数中的感叹号

Fib*_*axi 2 bash arguments

如果我在 Bash 中键入以下命令:

echo "dog!!"
Run Code Online (Sandbox Code Playgroud)

我不明白字符串 dog!!。相反,我得到了别的东西。

我试图"dog!!"通过回显来回显字符串"dog\!\!,但它也不起作用。

当有两个感叹号时如何使用命令参数?

我希望这些感叹号被视为没有任何特殊功能的感叹号。

两个感叹号"!!"似乎是最后一个命令。

Ste*_*itt 5

您需要转义感叹号,或使用引号:

echo dog\!\!
echo 'dog!!'
Run Code Online (Sandbox Code Playgroud)

(这并不能解释为什么你的echo "dog\!\!"不工作,但它应该工作,我不知道为什么它不会。或者至少,它不应该对历史采取行动;在 Bash 中它会输出dog\!\!。)