请查看以下命令:
$ notify-send SYNC TIME!
$ notify-send 'SYNC TIME!'
$ notify-send "SYNC TIME!"
bash: !": event not found
$
前两个命令按预期产生通知气泡。第三个给出显示的错误。
和
$ echo SYNC TIME!
SYNC TIME!
$ echo 'SYNC TIME!'
SYNC TIME!
$ echo "SYNC TIME!"
bash: !": event not found
$
同样,这里echo
适用于前两个命令,但不适用于第三个命令。
这里还有更多问题(尽管我不打算使用此问题):notify-send "SYNC!TIME"
和都echo "SYNC!TIME"
给出bash: !TIME": event not found
。
但两者notify-send
并echo
用工作"SYNC! TIME"
有人可以解释为什么会bash: !": event not found
出现错误吗?
.bashrc
行中来解决此不良行为set +H
。注意,!
在脚本编写中已经不是特别的了。将其视为特殊内容会破坏许多符合标准的脚本。在交互式Shell中,它仅被视为“特殊”,并且只有在您修复它之前,默认情况下才被视为。:-)