Пожалуйста, посмотрите на эти команды:
$ 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. Обратите внимание, что!это уже не является особенным в сценариях; обращение с ним как с особым нарушило бы многие сценарии, соответствующие стандартам. В интерактивных оболочках он рассматривается только как «особый» и только по умолчанию, пока вы его не исправите. :-)