Come posso controllare il terminale nello spazio corrente con AppleScript?

1

Lavorando sulla costruzione di un Handler che passa la finestra del terminale chiama quindi l'ID per uno script che ho eseguito in risultati misti e sono curioso di sapere se c'è un modo più pulito per ottenere window 1

Il gestore:

on termHandler()
    set activeTerminal to ""
    if application "Terminal" is running then
        tell application "Terminal"
            if not (exists window 1) and not busy of window 1 then
                activate
                tell application "Terminal" to do script "echo snow" in window 1
            else
                tell application "Terminal" to do script "date" in window 1
                set activeTerminal to window 1
                return activeTerminal
            end if
            do script "echo foo"
            activate
            set activeTerminal to window 1
            return activeTerminal
        end tell
    else
        tell application "Terminal"
            activate
            do script "echo bar" in window 1
            set activeTerminal to window 1
            return activeTerminal
        end tell
    end if
end termHandler

Tutto ciò che ho letto e ricercato:

Suggerisce che AppleScript e Terminal non vanno d'accordo. Il mio sistema operativo attuale è Sierra. Sto scrivendo questo, ma in altre scatole ho eseguito Yosemite che userebbe questo script. Il mio obiettivo finale qui è identificare una finestra di Terminale in quello spazio particolare e sparare un po 'di do script , ma sembra che abbia un problema a farlo. C'è un modo più semplice per identificare se il terminale è in esecuzione, non creare una nuova finestra e se è in esecuzione restituire window 1 come variabile in modo che possa passarlo do script ?

    
posta ʀ2ᴅ2 14.12.2017 - 16:23
fonte

1 risposta

-1

Hai davvero bisogno di inserirlo in una finestra del terminale o è solo il modo in cui hai trovato che funziona? Non sono sicuro che tu ne sia a conoscenza o meno, ma puoi eseguire gli script di shell direttamente da un AppleScript usando questo comando "fai shell script". Ad esempio:

do shell script "echo snow"
    
risposta data 30.12.2017 - 09:01
fonte

Leggi altre domande sui tag