У меня есть скрипт bash, который отправляет пару уведомлений Slack через CURL и порождает ожидаемый скрипт.

Когда я запускаю скрипт через . scriptName.sh работает нормально, но когда я запускаю его, набирая ./scriptName.sh -части терпят неудачу с сообщением об ошибке:

protocol $https not supported or disabled in libcurl

Вот основной файл:

curl --data "building Dev" $"https://domain.slack.com/services/hooks/slackbot?token=yourTokenHere&channel=%23yourChannelHere"

expect script.exp

curl --data "Dev built" $"https://domain.slack.com/services/hooks/slackbot?token=yourTokenHere&channel=%23yourChannelHere"

1 ответ1

0

Таким образом, скрипт отлично работает, когда вы "исходите" из него (используя «. Command»), но не когда вы его исполняете (используя «./command»).

Первое, что нужно проверить, это разрешения. Убедитесь, что у него есть права на выполнение.

Другая вещь, которую я обнаружил и которая часто исправляет ситуацию такого типа, - пометить файл как скрипт, вставив в верхнюю строку файла следующее:

#!/ Бен / ш

Конечно, если вы используете какие-либо специфичные для оболочки функции, вы должны указать, какую альтернативную оболочку использовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .