Benutzerdefinierte Suche

Terminal nach Ende der Anweisung beenden?

  1. BalkonSurfer

    BalkonSurfer Thread StarterMacUser Mitglied

    Mitglied seit:
    27.07.2003
    Beiträge:
    5.157
    Zustimmungen:
    1
    Hi..
    Ich hab folgendes Problem:
    Ich möchte über ein Applescript nacheinander verschiedene Befehle im Terminal ablaufen lassen. Wenn diese Befehle beendet sind, soll sich das Terminalfenster schließen.

    Es sind jedoch mehrere Fenster und die Befehle dauern schon ne Weile ..

    Wenn ich jetzt mit
    tell application "Terminal"
    run
    do script with command "Befehl"
    quit
    end tell
    anfange, will Applescript das Fenster während der Ausführung schließen und es gibt Fehler ...

    Was tun?, sprach ... ähhh ... ich :)
     
    BalkonSurfer, 02.01.2004
  2. Snow

    SnowMacUser Mitglied

    Mitglied seit:
    24.03.2003
    Beiträge:
    262
    Zustimmungen:
    2
    Hallo BalkonSurfer,

    Ich würde an deiner Stelle erst gar keine Terminalfenster öffnen.

    Statt 'do script with command ...' solltest du 'do shell script "Scripttext"...' verwenden. So werden die Anweisungen komplett im Hintergrund ausgeführt. Das Terminal wird erst gar nicht gestartet.
     
    Snow, 03.01.2004
  3. BalkonSurfer

    BalkonSurfer Thread StarterMacUser Mitglied

    Mitglied seit:
    27.07.2003
    Beiträge:
    5.157
    Zustimmungen:
    1
    Das wäre ne Idee..
    Ich hab das Terminal genommen, weil ich dann sehen kann, wenn die Befehle fertig sind...

    Aber ich kann ja ins Script bestimmt irgendwas einbauen, dass mir signalisiert, wenns fertig ist.

    Vielen Dank!
     
    BalkonSurfer, 03.01.2004
  4. Snow

    SnowMacUser Mitglied

    Mitglied seit:
    24.03.2003
    Beiträge:
    262
    Zustimmungen:
    2
    Soweit ich das bisher beobachten konnte, läuft das AppleScript erst weiter, wenn der Shell-Script-Befehl abgeschlossen ist.

    Ich habe heute eine Ordneraktion geschrieben, bei der per Shell-Script ein FTP-Upload realisiert wird. Gleich nach dem "do shell script"-Befehl habe ich eine Dialogmeldung eingebaut, die mir signalisiert, wann das Skript fertig ist.
    Und hier konnte ich bisher je nach Upload-Menge schon recht unterschiedliche Zeiten feststellen.

    Es ist also nicht so, dass AppleScript den "do shell script"-Befehl nur abfeuert und dann gleich mit den nächsten Anweisungen weiter macht, die Ausführung des Shell-Befehls wird schon abgewartet.
     
    Snow, 03.01.2004
  5. BalkonSurfer

    BalkonSurfer Thread StarterMacUser Mitglied

    Mitglied seit:
    27.07.2003
    Beiträge:
    5.157
    Zustimmungen:
    1
    Also:

    tell application "Terminal"
    run
    do script with command "Befehl"
    quit
    end tell

    wartet nicht und bläst einfach weiter und

    do shell script "Befehl"

    wartet schön :)

    Nur für ne Dialogmeldung muss ich noch n bischen nachschlagen ...
     
    BalkonSurfer, 03.01.2004
  6. Snow

    SnowMacUser Mitglied

    Mitglied seit:
    24.03.2003
    Beiträge:
    262
    Zustimmungen:
    2
     

    display dialog "Ich bin jetzt fertig!" buttons {"OK"} default button 1 with icon 1 giving up after 20


    Was das alles bedeutet, kannst du auf meiner Website nachlesen. ;-)
     
    Snow, 03.01.2004
  7. BalkonSurfer

    BalkonSurfer Thread StarterMacUser Mitglied

    Mitglied seit:
    27.07.2003
    Beiträge:
    5.157
    Zustimmungen:
    1
    Dank Dir!
    Diese Zeile ist gottseidank selbsterklärend, allerdings ist Applescript echt komplex! Hätt isch nisch gedacht *überfordert* :)
     
    BalkonSurfer, 03.01.2004
Die Seite wird geladen...
Ähnliche Themen - Terminal nach Ende
  1. matrix567
    Antworten:
    1
    Aufrufe:
    122
    Olivetti
    05.07.2017
  2. gandalf12
    Antworten:
    4
    Aufrufe:
    298
    Macschrauber
    24.03.2017
  3. roedert
    Antworten:
    2
    Aufrufe:
    158
    roedert
    20.02.2017
  4. TSchustek
    Antworten:
    5
    Aufrufe:
    310
    ProjectBuilder
    13.04.2016
  5. musihalle
    Antworten:
    8
    Aufrufe:
    777
    musihalle
    28.09.2008