Hilfe bei einem AppleScript (App starten und Befehle aus Text-Datei ausführen)

E

evoltn

Registriert
Thread Starter
Dabei seit
28.01.2013
Beiträge
4
Reaktionspunkte
0
Hallo Zusammen,

Ich habe ein kleines Problem, muss dazu sagen dass ich komplette Anfänger bin. Habe mich in AppleScript eingelesen und komme bei folgendem Szenario nicht weiter. Ich möchte gerne eine Script erstellen welches im Terminal ein Programm lädt. Das Programm nennt sich „rtmpdump“ und liegt lokal auf meiner HDD. Sobald dieses im Terminal geöffnet wurde soll die folgende Kommandozeile eingegeben werden:

rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "neverb" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o neverb.flv


Jetzt kommt aber der schwierige Teil. Ich habe eine Text-Datei mit an die 100 Kommandozeilen. Hier ein Auszug:

rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "neverb" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o neverb.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "abab" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o abab.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "nlola" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o nlola.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "kavar" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o kavar.flv


Gibt es eine Möglichkeit das App zu starten und jede einzelne Kommandozeile abzuarbeiten?



Danke schon mal und viele Grüße,
Alex
 
Mach doch ein Bash-Script draus:
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html

So ein script wird zeilenweise abgearbeitet.

Setz mal in die erste Zeile ein
#!/bin/bash
(Siehe auch die URL)

Dann hast du zwei Möglichkeiten:
- Entweder im Terminal ausführen
- Oder mittels Automator eine kleine App drumrum bauen.
 
...deine Textdatei ist doch nichts anderes als ein Shellscript.
Markiere diese als ausführbar (chmod +x dateiname) ... und schon kannst du diese ausführen und es werden alle darin enthaltenen Befehle nacheinander abgearbeitet.

Starten kannst du dies im Terminal mit /pfad/dateiname oder wenn du bereits im gleichen Verzeichnis stehst mit ./dateiname
Ein Doppelklick darauf im Finder sollte eigentlich auch funktionieren.
 
@roeder: und wie kann ich davor das App “rtmpdump” starten. Denn die Befehle sind Kommandozeilen für dieses App, welche ausgeführt werden sollen.
 
Danke für die Hilfe, leider funktioniert es nicht wirklich, mein Script sieht aktuell so aus:


#! /bin/shcd
Documents/rtmpdump
./rtmpdump
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "neverb" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o neverb.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "abab" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o abab.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "nlola" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o nlola.flv
rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "kavar" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o kavar.flv

im Prinzip soll das Script folgendermaßen vorgehen:

1. das Programm "rtmpdump" soll geöffnet werden welches unter Documents liegt

2. sobald das Programm geöffnet wird, soll dieses mit den folgendem Kommando gefüttert werden:

rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "neverb" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o neverb.flv

3. download sollte starten, sobald dieser fertig ist soll das nächste Kommando abgearbeitet werden:

rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "abab" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o abab.flv

4 usw. bis alle Downloads fertig sind.
 
Im Programm rtmdump selbst musst du nochmal den befehl rtmpdump eintippen?
Sicher dass es nicht einfach nur mit den Parametern von der Befehlszeile aufgerufen wird - also so in etwa:

#! /bin/sh
cd ~/Documents
./rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "neverb" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o neverb.flv
./rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "abab" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o abab.flv
./rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "nlola" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o nlola.flv
./rtmpdump -r "rtmpe://beispiel.rtmphost.com/workouts" -y "kavar" -s "http://www.beispiel.com/workouts/mwplayer.swf" -o kavar.flv
 
danke, jetzt funktioniert es :)

Gibt es eigentlich eine Befehl den ich zum Schluss setzen kann der nach erfolgreichem downloaden meinen mac herunterfährt?
 
eigentlich geht das mit dem Befehl shutdown - der muss aber mit sudo ausgeführt werden, und dazu musst du jedesmal dein Passwort eingeben.
Es müsste aber auch mit Applescript gehen - aus deinem Shellscript aufgerufen mit:

osascript -e 'tell application "System Events" to shut down'
 
Zurück
Oben Unten