0 votes

Comment faire en sorte qu'un service Automator exécute un terminal et affiche la sortie ?

J'utilise Automator pour exécuter un script shell script (Rar des fichiers sélectionnés) en tant que 'Service', de sorte que je puisse simplement cliquer avec le bouton droit de la souris sur un dossier et sélectionner le service. Cela fonctionne bien, mais j'ai ajouté verbose et testing (pour voir la progression et les résultats des tests) et j'ai donc besoin de voir la sortie de la fenêtre du terminal pour m'assurer que l'archive est correcte. Est-ce qu'il y a un moyen de voir la sortie en temps réel ? ou de faire une étape supplémentaire en affichant les résultats ?

voici le script qui fonctionne dans automator mais la sortie est silencieuse.

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

MERCI !

1voto

user3439894 Points 52496

Modifier la ligne suivante de 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

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X