Come posso far funzionare un terminale di un servizio Automator e visualizzare l'output?

0

Uso Automator per eseguire uno script di shell (file Rar selezionati) come "servizio", in modo da poter fare clic con il pulsante destro del mouse su una cartella e selezionare il servizio. Funziona bene, ma ho aggiunto verbose e test (per vedere i progressi e i risultati dei test), quindi ho bisogno di vedere l'output della finestra del terminale per assicurarmi che l'archivio sia ok. C'è un modo per vedere l'output in tempo reale? o per fare un passo in più echo i risultati?

ecco lo script che funziona in automator ma l'output è silenzioso.

on run {input, parameters}
set nbFiles to count input

if nbFiles = 0 then
    display dialog "No files selected!" buttons {"OK"} default button 1
    return
end if

tell application "Finder"

    set archiveDir to (container of (item 1 of input) as string)
    if nbFiles = 1 then
        set archiveName to (name of (item 1 of input) as string)
    else
        set archiveName to "archive"
    end if

    if exists file (archiveDir & archiveName & ".rar") then
        set i to 2
        repeat while exists file (archiveDir & archiveName & "-" & i & ".rar")
            set i to i + 1
        end repeat
        set archiveName to archiveName & "-" & i
    end if

    set archiveDir to quoted form of POSIX path of archiveDir
    set archiveName to quoted form of (archiveName & ".rar")

    set listFiles to " "
    repeat with i in input
        set listFiles to listFiles & quoted form of ("." & POSIX path of (name of i as string)) & " "
    end repeat

end tell

do shell script "cd " & archiveDir & "; rar a -ol[a] -mt8 -m5- -y -s -m4 -t " & archiveName & listFiles

return input
end run

GRAZIE !!

    
posta phattydee 24.01.2018 - 15:04
fonte

1 risposta

1

Cambia la seguente riga di code :

do shell script "cd " & archiveDir & "; rar a -ol[a] -mt8 -m5- -y -s -m4 -t " & archiveName & listFiles

A:

tell application "Terminal"
    do script "cd " & archiveDir & "; rar a -ol[a] -mt8 -m5- -y -s -m4 -t " & archiveName & listFiles   
end tell
    
risposta data 24.01.2018 - 15:22
fonte

Leggi altre domande sui tag