Ich habe ein Bash-Skript, das ein paar Benachrichtigungen über CURL an Slack sendet und ein Expect-Skript erzeugt.
Wenn ich das Skript über . scriptName.sh
es starte, funktioniert es einwandfrei, aber wenn ich es durch Eingabe ./scriptName.sh
der CURL-Teile starte, schlägt die Fehlermeldung fehl:
protocol $https not supported or disabled in libcurl
Hier ist die Basisdatei:
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"
export https;./scriptName.sh
Sie aus, ob sich dadurch etwas ändert.
$
vor der URL ein? In Bash ruft dies die String-Lokalisierung auf. in anderen Schalen ... wer weiß? Apropos, Ihr Drehbuch sollte eigentlich mit einer Shebang-Zeile wie beginnen #!/bin/bash
.
.
scheint die Datei auch dann ausgeführt zu werden, wenn sie nur lesbar ist. Das Skript ausführbar zu machen, hat mein Problem behoben, aber ich hätte versucht, Ihre Vorschläge zu machen, wenn es nicht funktioniert hätte.
chmod a+x scriptName.sh
. Der.
Befehl erfordert nur, dass ein Skript lesbar ist.