Использование сопоставления с шаблоном !("file1")
не работает в скрипте bash, но будет работать в командной строке.
Например:
ls !("file1"|"file2")
Это перечислит все файлы в каталоге, кроме file1
и file2
.
Когда эта строка выполняется в скрипте, эта ошибка отображается:
./script.sh: line 1: syntax error near unexpected token '('
./script.sh: line 1: ' ls !("file1"|"file2") '
Независимо от того, что используется rm -v !("file1")
. Такая же ошибка имеет место. Что здесь происходит, почему это не работает в сценарии?