Bitte schauen Sie sich diese Befehle an:
$ notify-send SYNC TIME!
$ notify-send 'SYNC TIME!'
$ notify-send "SYNC TIME!"
bash: !": event not found
$
Die ersten beiden Befehle erzeugen erwartungsgemäß eine Benachrichtigungsblase. Der dritte gibt den angezeigten Fehler an.
und
$ echo SYNC TIME!
SYNC TIME!
$ echo 'SYNC TIME!'
SYNC TIME!
$ echo "SYNC TIME!"
bash: !": event not found
$
Auch hier echo
funktioniert das für die ersten beiden Befehle, aber nicht für den dritten.
Weitere Probleme hier (obwohl ich dies nicht vorhatte): beides notify-send "SYNC!TIME"
und echo "SYNC!TIME"
geben bash: !TIME": event not found
.
Aber beides notify-send
und echo
arbeiten mit"SYNC! TIME"
Kann mir bitte jemand erklären, warum der bash: !": event not found
Fehler auftritt?
.bashrc
die Leitung ergänzenset +H
. Beachten Sie, dass dies!
in Skripten bereits keine Besonderheit ist. Wenn Sie es als etwas Besonderes behandeln, können viele standardkonforme Skripte beschädigt werden. Es wird nur in interaktiven Shells als "speziell" behandelt und standardmäßig nur, bis Sie es beheben. :-)