Curl in einem Shell Script

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ch8kra
Beiträge: 1
Registriert: 10.01.2013 17:20:38

Curl in einem Shell Script

Beitrag von ch8kra » 27.03.2013 19:30:28

Hallo,

Ich möchte mir gerne mittels einem Script eine Nachricht auf mein Handy senden. Hierfür benutze ich die Pushover.net API.
Jetzt habe ich versucht dies als Script zu speichern und auszuführen:

Code: Alles auswählen

#!/bin/bash
curl -s \
  -F "token=abc123" \
  -F "user=user123" \
  -F "message=hello world" \
  https://api.pushover.net/1/messages.json
Das ganze funktioniert nur leider überhaupt nicht, ich bekomme die Meldung angezeigt, dass curl hier nicht verwendet werden kann.
Wie kann ich in einem Shell Script diese curl Befehle benutzten?
Wenn ich die Befehle einzeln nacheinander im Shell eingebe funktioniert alles problemlos!

Besten Dank

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Curl in einem Shell Script

Beitrag von Cae » 27.03.2013 20:02:25

ch8kra hat geschrieben:ich bekomme die Meldung angezeigt, dass curl hier nicht verwendet werden kann.
Da der Aufruf sonst korrekt aussieht: Wo steht diese Meldung? Bitte Fehlermeldungen grundsaetzlich im Wortlaut posten.

Willkommen im Forum!

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: AW: Curl in einem Shell Script

Beitrag von Natureshadow » 28.03.2013 10:38:37

Bitte bevor du weiter machst das /bin/bash durch /bin/sh oder /bin/mksh ersetzen.

-nik

wanne
Moderator
Beiträge: 7552
Registriert: 24.05.2010 12:39:42

Re: AW: Curl in einem Shell Script

Beitrag von wanne » 28.03.2013 21:02:47

Natureshadow hat geschrieben:Bitte bevor du weiter machst das /bin/bash durch /bin/sh oder /bin/mksh ersetzen.
Warum? Die bash bietet viele annehmlichkeiten ($RANDOM; {a,b};...) und ich nehme an das es ihm nicht so sehr auf Geschwindigkeit ankommt und die bash wird sowieso jedes System haben, auf dem er das Ding ausführen will.
rot: Moderator wanne spricht, default: User wanne spricht.

Liffi
Beiträge: 2345
Registriert: 02.10.2004 01:33:05

Re: AW: Curl in einem Shell Script

Beitrag von Liffi » 28.03.2013 21:24:53

wanne hat geschrieben:
Natureshadow hat geschrieben:Bitte bevor du weiter machst das /bin/bash durch /bin/sh oder /bin/mksh ersetzen.
Warum? Die bash bietet viele annehmlichkeiten ($RANDOM; {a,b};...) und ich nehme an das es ihm nicht so sehr auf Geschwindigkeit ankommt und die bash wird sowieso jedes System haben, auf dem er das Ding ausführen will.
Das ist eine schlechte Angewohnheit. Die Bash ist z.T. inkompatibel zur: Bash. Zumindest zu älteren Versionen. Das führt unter Umständen zu Fehlern, die man nicht wirklich absieht.

wanne
Moderator
Beiträge: 7552
Registriert: 24.05.2010 12:39:42

Re: Curl in einem Shell Script

Beitrag von wanne » 28.03.2013 22:49:08

Solange nur zu älteren und nicht zu nueren Versionen ist das doch für die meisten Scripte egal. Und dash vs. bash im kompatibilitätsmodus (Die in den meisten Fällen hinter /bin/sh liegt) ist auch nicht unbedingt kompatibel...
Wer sauber Arbeiten will muss sich an posix halten. (Und vermutlich bsesser in C schreiben.) Den Validierenden Interpreter habe ich für die shell noch nicht gefunden.
rot: Moderator wanne spricht, default: User wanne spricht.

Liffi
Beiträge: 2345
Registriert: 02.10.2004 01:33:05

Re: Curl in einem Shell Script

Beitrag von Liffi » 29.03.2013 07:20:02

wanne hat geschrieben:Solange nur zu älteren und nicht zu nueren Versionen ist das doch für die meisten Scripte egal.
Es kann dir halt passieren, dass es auf dem Sid Notebook läuft und auf dem Stable Desktop nicht.
Wenn man sich an das hält, was die dash kann, sollten es die meisten shells können.

Antworten