Использование сопоставления с шаблоном !("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")
.Такая же ошибка имеет место.Что здесь происходит, почему это не работает в сценарии?