Terminal-FTP über Automator nutzen

Dieses Thema im Forum "Mac OS X" wurde erstellt von Quarc, 22.03.2006.

  1. Quarc

    Quarc Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    MacUser seit:
    22.03.2006
    Ich muß etwas ganz einfaches erledigen:

    Automator soll einen Server-Ordner per FTP leeren.

    Mein Plan: Mit der Action "Terminal-Skript" möchte ich mich mit ftp verbinden.
    Es gibt ja den Befehl mdelete, womit ich alle Dateien in einem Ordner löschen kann. Jedoch habe ich's bisher nur geschafft, das händisch nach dem Einloggen einzugeben. Aber wie kann ich per Terminal-Aufruf mich mit dem Server verbinden und dann mdelete ausführen?

    Ich möchte ungern eine Skriptdatei dafür anlegen, weil der Automator-Workflow dann zusätzlich von dieser Skriptdatei abhängt.

    Kann ich irgendwie mit der Terminal-Aktion direkt ftp starten, connecten und mdelete ausführen?
     
  2. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    MacUser seit:
    24.09.2003
    Code:
    echo mdelete ... | ftp user:passwort@ftp.server.de
     
  3. Quarc

    Quarc Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    MacUser seit:
    22.03.2006
    ah super, danke!

    Geht das konstrukt auch mit mehreren Commands, die ich an ftp übergeben möchte?
     
  4. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    MacUser seit:
    24.09.2003
    Na klar.
    Code:
    echo -e "kommando1\nkommando2\nkommando3" | ftp user:passwort@ftp.server.de
    Das ist aber ingesamt eine zimelich schmutzigen Lösung.

    Ich kenne ja nicht die gesamte Aufgabe, die Du mit Automator hier lösen möchtest, aber ich denke, da gibt es evtl. bessere Alternativen.
     
  5. Quarc

    Quarc Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    MacUser seit:
    22.03.2006
    Die Aufgabe ist wie oben beschrieben:

    Ich möchte in einer Action über Automator einen Ordner auf dem Server leeren.
    Mit der Action "Shell-Skript" kann ich scheinbar nicht sowas machen:
    --
    ftp -i [DLMURL]ftp://user:passwort@bla.bla.de[/DLMURL]
    mdelete *
    bye
    --
    ...gibt nen fehlerhaften Abbruch.
    Ich möchte am liebsten auch keine andere zu installierende Action nutzen (wie FTP Upload), weil ich dann davon immer bei Portierung des Workflows abhängig bin.
    Als nächstes muß ich auch noch alle Dateien eines Ordners hochladen. Mir ist noch nicht klar, wie ich die Eingabe der vorherigen Aktion (Ordnerinhalt abfragen) in meinem Shell-Skript abfragen kann.
     
  6. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.645
    Zustimmungen:
    596
    MacUser seit:
    24.09.2003
    Du hast meinen Vorschlag ja noch gar nicht umgesetzt
    Code:
    echo mdelete \* | ftp -i user:passwort@bla.bla.de
    Mehr brauchts doch gar nicht. Einem reinen ftp Client musst Du nicht das Übertragungsprotokoll angeben.
     
  7. Quarc

    Quarc Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    MacUser seit:
    22.03.2006
    doch, deinen Vorschlag habe ich schon dankenderweise getestet und es funktioniert (mdelete * muß allerdings in Tüddelchen eingeschlossen sein).

    Mein letzter Post war auf die Frage, was ich denn eigentlich machen will und daß es sicher bessere Alternativen gibt.
    Außerdem dazu noch die Frage, wie ich denn den Input einer vorherigen Action (Ordnerinhalt abfragen) in dem Shellskript zugreifen kann, um die übergebenen Dateien per fpt hochzuladen.
     
Die Seite wird geladen...