1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

Automator: Shell Skript + Variable

Dieses Thema im Forum "AppleScript" wurde erstellt von Obstschale, 01.09.09.

  1. Obstschale

    Obstschale Jamba

    Dabei seit:
    17.09.07
    Beiträge:
    55
    Hallo,

    ich habe ein Terminalbefehl und ich dachte es wäre praktisch ein Automatorprogramm dafür zu haben. Aber da ich noch nie mit Automator gearbeitet habe und auch noch Goolge Suche und Co. kein Ergebnis habe frage ich einfach mal nach.

    Am besten ich erkläre was ich will.
    Es geht um eine Datei die dekodiert werden soll. Ich möchte das ich einfach die Datei auf das Automator-Programm ziehe oder dann via Finder-Plugin das ausführe. Das Programm muss dann das Terminal starte und einen Teil des Befehls eintippen dann den Pfad der Datei einfügen und dann den Rest des Befehls eintippen und am schluss noch auf Enter drücken. Danach sollte das Terminal arbeiten und die Dekodierte Datei ausgeben.
    Am Schluss sollte dann noch die Ursprungsdatei gelöscht werden - aber das ist ja nicht so schwer.

    Ich dachte man könnte das ganze mit eine Variablen lösen. Aber 2 Probleme tretten dabei auf: 1. Ich weiß nicht wie ich den Pfad der Datei als Variable speichere und 2. wie kann ich die Variable in den Terminal Befehl einfügen?

    Ich danke jeden der mit Hilf :D
    Gruß, obstschale
     
  2. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Hallo,

    - Skript > 1. Zeile > "on open fileList" > siehe Droplet
    - Schleife abarbeiten mit "do shell script" > Dein Befehl
    - Löschen via Finder oder rm

    Viele Grüße
     
  3. Obstschale

    Obstschale Jamba

    Dabei seit:
    17.09.07
    Beiträge:
    55
    könntest du das für mich genauer erkläre? Irgendwie versteh ich das nicht und zudem weiß ich nicht wie du dir die Schleife vorstellst.

    Vielen Dank
     
  4. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    • SkriptEditor öffnen
    • Code eingeben

    • anpassen

    Bitte auf Grund der Stichworte die Suche bemühen.
    Es ist alles vor Ort ;)

    Viele Grüße
     
  5. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    Warum postest Du keine Details um welchen Befehle es sich handelt, oder was wirklich passieren soll? Stattdessen eierst Du um die von Dir vermeintliche Problemlösung herum als wäre es ein Staatsgeheimnis. So kann man Dir nicht helfen wenn Du nichtmal preisgibst was Du überhaupt vorhast.
    Gruß Pepi
     
  6. Obstschale

    Obstschale Jamba

    Dabei seit:
    17.09.07
    Beiträge:
    55
    Servus Pepi,

    nicht weinen! ich habe es nicht böse gemeint ^^ Im prinzip ist es egal was man in so ein Forum rein schreibt einer meckert immer. Ich hatte es schon oft, das Leute gemeckert haben das ich zuviele Infos gebe und so ist es unübersichtlich und du meckerst das ich zu wenige Infos gebe. Ich kann dir gerne sagen um was es geht.

    Ich bin beim Online Dienst OnlineTvRecording.com angemeldet und damit kann ich TV Sendungen aufnehmen. Die Datei die dabei auf genommen wird hat ein eigenes Format das ich erst dekodieren muss. Um es zu dekodieren gibt es extra ein Terminal Programm und in der Read-Me Datei steht der folgende Befehl drin:

    <Ordner von OTR Programm> -i <Name der zu dekodierenden Datei> -o <Zielverzeichnis> -e <eMail> -p <Passwort>

    (eMail und Password sind die Daten vom Dienst, man kann nämlich nur die Dateien dekodieren die man auch aufgenommen hat. Und so wird das nachgeprüft).

    Ich weiß ja jetzt nicht wirklich ob das dir weiter Hilft, aber bitte schön :D

    Auch noch was wenn jetzt einer kommt und sagt: benutze doch OTRDecoderX (http://www.markusweimar.de/software/) dann sage ich. Ich will kein fertiges Programm ich will es selber machen und auch was lernen ;D Also vielleicht noch mal für alle: Mein Ziel ist ein eigenes Programm (und sei es mit Hilfe) zu erstellen und kein fertiges Programm zu nehmen.

    Danke aber pepi für deinen Interesse ich weiß viele übergehen dass dann einfach, wenn es ihnen nicht passt. Also ich schätzte deine Offenheit!

    LG
     
  7. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    So kann man langsam eine Idee bekommen worum es überhaupt geht. Ich hab hier noch ein (ewig altes) q'n'd Skript um zu dekodieren.

    Code:
    #!/bin/sh
    #
    # otr decoder, shell wrapper for online TV recorder CLI command to
    # decode .otrkey files
    # Quick and Dirty Hack, by Pepi Zawodsky (2005.11.27)
    # Provided as is, no warranties whatsoever.
    
    # Set otrUsername to your Online TV Recorder eMail Address
    otrUsername="user@example.com"
    
    # Set otrPassword to the OnlineTV Recorder Password you use to login
    otrPassword="DeinSuperGeheimesPasswort"
    
    # Set otrDecoderPath to the POSIX Path where the otrdecoder binary is located
    otrDecoderPath="$HOME/bin/otrdecoder/otrdecoder"
    
    # Set otrOutPutLocation to the Folder where the decoded files shall be stored
    otrOutPutPath="$HOME/Movies/OTR/"
    
    echo The Movie file $1 will be decoded and saved in $outPutLocation
    $otrDecoderPath -i $1 -e $otrUsername -p $otrPassword -o "$otrOutPutPath"
    open $otrOutPutPath
    
    #EOF
    
    Wenn Du nachher noch den Rückgabewert von [tt]otrdecoder[/tt] auswertest, kannst Du sogar noch eine sinnvolle Meldung per Mail senden. Ich halte es persönlich für sehr unnötig da ein Mail zu verschicken, da es so schnell geht, daß sich das kaum auszahlt. Growl finde ich dafür besser geeignet, was aber auch kein Problem ist.

    Ja, das Passwort da im Klartext reinzukodieren ist sehr unelegant, aber immer noch besser als es als Parameter zu übergeben wo es über die Prozessliste ausgelesen werden kann. Korrekterweise müßte man es über [tt]security[/tt] aus dem Schlüsselbund holen.

    Das Commandline binary [tt]otrdecoder[/tt] ist beim GUI App dabei und wird von diesem Skript benötigt. [tt]PATH[/tt] kamma ja simpelst anpassen.
    Wäre wohl ideal als Applescript Droplet zu realisieren, da halte ich Automator schon für ein zu großes Geschütz.

    Wie Du Variablen aus AppleScript an ein Shell Skript übergeben kannst, ist in der Doku zum AppleScript Befehl [tt]doshellscript[/tt] nachzulesen, bzw. in dessen SampleCode.
    Gruß Pepi
     
  8. Obstschale

    Obstschale Jamba

    Dabei seit:
    17.09.07
    Beiträge:
    55
    Wow vielen Dank!

    Aber eine Frage noch: Ich bin ja nicht der Typ das alles vorgekaut haben will aber ich würde noch gerne wissen, wo finde ich diese Doku zu den befehl "doshellscript" ?? Bzw. Wo ist der SampleCode?

    Vielen Dank
     
  9. pepi

    pepi Cellini

    Dabei seit:
    03.09.05
    Beiträge:
    8.741
    Schau mal in die Hilfe vom ScriptEditor! Alternativ kann ich auch den wenig naheliegenden Versuch über die Internetsuchmaschine Deiner Präferenz empfehlen. Just f***ing google it!
    Gruß Pepi
     
  10. Obstschale

    Obstschale Jamba

    Dabei seit:
    17.09.07
    Beiträge:
    55
    Ich bin ja nicht blöd aber bei mir finde ich weder über die Hilfe von SkriptEditor noch über Google was wenn ich "doshellscript" eintippe. Und auch auf der offiziellen AppleScript SampleCode Seite gibt es keinen Code der dazu passen könnte. Oder die benutzen einfach einen anderen namen.

    Update: Ok sorry mein Fehler ich habe nur über die Hilfe Box gesucht aber nicht selber im Hilfe Menü. ich habs gefunden (aber dennoch nicht über googel :p) ^^
     
  11. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641

Diese Seite empfehlen