Lord Sarevok

Desarrollador web

AppleScript para abrir el terminal con varias pestañas y ejecutando varios comandos

December 25th 2010

Un apple script para lanzar desde launchbar

Me lo he hecho según mis necesidades, pasándole un directorio (o un alias en mi caso) nos levanta un servidor, nos abre una consola, arranca el autotest y el proyecto en textmate.

on handle_string(dir)
    set commands to {"ss", "sc", "autotest -f", "m"}

    tell application "Terminal"
        activate
    end tell

    repeat with command in commands
        tell application "Terminal"
            do script dir in front window
            do script command in front window
        end tell

        tell application "System Events"
            keystroke "t" using {command down}
        end tell
    end repeat
end handle_string

Para ejecutar el script desde la consola a través de osascript, habría que hacer algunos cambios, cambiamos el ‘on handle_string(dir)’ por ‘on run argv’, además de aplicar cambios en el end, tendremos que capturar los parámetros con ‘set dir to (item 1 of argv)’, quedando algo así

on run argv
    set alias_dir to (item 1 of argv)
    set commands to {"ss", "sc", "autotest", "m"}

    tell application "Terminal"
        activate
    end tell

    repeat with command in commands
        tell application "Terminal"
            do script alias_dir in front window
            do script command in front window
        end tell

        tell application "System Events"
            keystroke "t" using {command down}
        end tell

    end repeat
end run