Параметр исключения Tar в сценарии bash не работает

Вы можете включить тестовый репозиторий:

sudo yum -y install centos-release-scl
sudo yum-config-manager --enable centos-sclo-rh-testing
sudo yum install devtoolset-4-toolchain

devtoolset -4 -набор инструментов устанавливает соответствующие пакеты для c++. devtoolset -3 не работает на Centos6, он доступен в Scientific Linux.

0
14.10.2020, 14:11
3 ответа

Раскрытие скобок работает только в bash, но не в sh. Убедитесь, что ваш шебанг настроен на bash:

#!/usr/bin/env bash

Сделайте свой скрипт исполняемым и вызовите его напрямую

chmod +x myscript.sh
./myscript.sh

Вы всегда можете проверить расширение, поставив эхо перед своей командой.

echo tar --exclude=out/pictures/\*.{jpg,gif,png,jpeg} --exclude=tmp/\*.{txt,php} --exclude=log/\*.{log,sql} -cvf /backups/mydomain.tar -C /var/www/vhosts/mydomain.com/httpdocs content
0
18.03.2021, 22:57

Хорошо, сегодня я узнал кое-что важное.

Оболочка bash поддерживает раскрытие фигурных скобок. Оболочка sh (— это оболочка sh? )Однако нет.

И при запуске сценария с sh myscript.sh, как это сделал я, сценарий был выполнен с оболочкой sh. bash myscript.shработает мгновенно.

Но разве ссылка #!/bin/bashв файле sh не должна заставлять сценарий выполняться в любом случае с помощью bash?

Кто-нибудь может объяснить? Я немного смущен.

Running it as./script.sh will make the kernel read the first line (the shebang), and then invoke bash to interpret the script. Running it as sh script.sh uses whatever shell your system defaults sh to (on Ubuntu this is Dash, which is sh-compatible, but doesn't support some of the extra features of Bash).

Это бы все объяснило, но оболочкой по умолчанию echo $SHELLв моей Ubuntu является bash (эта цитата из 2010 года, поэтому я предполагаю, что тогда оболочкой по умолчанию в Ubuntu была тире ).

Хотелось бы понять, даже если он работает с bash myscript.sh.

0
18.03.2021, 22:57

Попробуйте:

tar --exclude="out/pictures/*.{jpg,gif,png,jpeg}" -cvf /backups/mydomain.tar -C "/var/www/vhosts/mydomain.com/httpdocs content"
0
18.03.2021, 22:57

Теги

Похожие вопросы