Sappiamo bene che tra Terminale e AppleScript c’è un ponte a due carreggiate.
La prima porta da AppleScript verso il Terminale. Si chiama do script
. Uno script come questo:
tell application "Terminal"
do script "uptime"
end tell
esegue il comando uptime
nel Terminale.
L’altra carreggiata porta dal Terminale ad AppleScript e porta il nome osascript
. Se scriviamo nel Terminale
osascript -e ’tell application “/Applications/iChat.app” to open’
(attenzione alle virgolette singole e doppie, e al parametro -e
che è necessario)
possiamo eseguire script dal Terminale.
La prima carreggiata però si può sfruttare un po’ meglio. Un esempio:
set stringaComandi to “/bin/ls -AelO” as text
tell application “Terminal” to do script stringaComandi in window 1
In questo modo, per esempio, possiamo memorizzare dentro un AppleScript certi comandi di Terminale utili e difficili da ricordare.
Su MacOSXHints si trova uno script ancora più lungo, che fa la stessa cosa e sta attenta a che niente possa andare male. È troppo lungo per essere ripetuto qui con profitto e anche estremamente interessante da studiare.