синтаксическая ошибка в bash rm -rf!;неожиданный маркер - PullRequest
0 голосов
/ 06 сентября 2018

Эта команда отлично работает, когда вы просто набираете ее в консоли и запускаете;

rm -rf !(folder1|file_name|log.txt|*.sh|*.conf)

Однако, когда я запускаю его из скрипта bash, он выдает мне следующую ошибку:

./test.sh: line 1: syntax error near unexpected token `('
./test.sh: line 1: `rm -rf !(folder1|file_name|log.txt|*.sh|*.conf)'

1 Ответ

0 голосов
/ 06 сентября 2018

Это расширенный синтаксис соответствия глобуса. Вам нужно включить его с помощью shopt -s extglob перед командой rm.

...