В bash:
$ a=1
$ echo $a
1
$ echo "$a"
1
Но:
$ echo !
!
$ echo "!"
bash: !: event not found
Почему в "echo!" Bash не расширяется.
В «echo!» После взрыва следует возврат каретки.
мужик
!
Начать подстановку истории, кроме тех случаев, когда за ними следует пробел, новая строка, возврат каретки или = или ((когда опция оболочки extglob включена с помощью встроенной функции shopt).