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.shes starte, funktioniert es einwandfrei, aber wenn ich es durch Eingabe ./scriptName.shder 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.shSie 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.