¿Cómo usar AppleScript para lanzar tres scripts, cada uno en la nueva pestaña Terminal?

4

Estoy intentando lanzar 3 pestañas y ejecutar un script en cada uno con AppleScript. Hasta ahora no he podido hacer esto. Actualmente tengo:

tell application "Terminal"
    activate
    do script "ping google.com"
    tell application "System Events"
        keystroke "t" using {command down}
        do script "ping yahoo.com"
    end tell
    tell application "System Events"
        keystroke "t" using {command down}
        do script "ping msn.com"
    end tell
end tell

Esto abrirá tres pestañas pero los pings no se ejecutan en las últimas dos pestañas.

Probablemente me esté perdiendo algo básico aquí.

    
pregunta Nick 28.07.2012 - 03:49

1 respuesta

10
  1. " Eventos del sistema " no entiende lo que quiere hacer con do script , use el comando do script fuera del bloque tell application "System Events" .

  2. Debe especificar una ventana o pestaña al usar el comando do script , de lo contrario se abrirá una nueva ventana.

Actualizado ( León El Capitán):

tell application "Terminal"
  activate
  do script
  do script "ping google.com" in tab 1 of front window
  my makeTab()
  do script "ping yahoo.com" in tab 2 of front window
  my makeTab()
  do script "ping msn.com" in tab 3 of front window
end tell

on makeTab()
  tell application "System Events" to keystroke "t" using {command down}
  delay 0.2
end makeTab

editar: parece que El Capitán recuerda el primer comando y lo ejecutó automáticamente al abrir una nueva pestaña (usando cmd-t , que es lo que hace el script), la ejecución de do script sin un comando abre la ventana (nueva) de terminal para que do 's se use mientras se evita que un comando se ejecute automáticamente.

    
respondido por el jackjr300 28.07.2012 - 17:25

Lea otras preguntas en las etiquetas