Atajo de acoplamiento para un script de bash interactivo

0

Soy nuevo en OSX y todo lo que quiero es un acceso directo de aplicación en Dock que abra el terminal, escriba el primer comando y espere a que proporcione la contraseña. Aquí está el script que quiero ejecutar:

#!/usr/bin/env bash
sudo openconnect --user={username} {host}

Y aquí está el AppleScript que creé usando Automator:

do shell script "/usr/local/bin/openconnect --user={user} {host}" with administrator privileges

Pero cuando lo ejecuto, sale cuando pide un nombre de usuario y una contraseña. ¿Qué me estoy perdiendo aquí?

    
pregunta norbertpy 18.07.2015 - 01:15

2 respuestas

1

Bien, creo que encontré la respuesta:

tell application "Terminal"
    do script "sudo /usr/local/bin/openconnect --user={user} {host}"
    activate
end tell
    
respondido por el norbertpy 18.07.2015 - 01:45
1

En lugar de tener un applet de Automator / AppleScript para ejecutar este comando, puedes usar Terminal para ejecutar ese comando automáticamente al iniciar.

  1. En la Terminal, ve a la Terminal > Preferencias.
  2. En el panel General, en "Carcasas abiertas con:", selecciona "Comando (ruta completa):"
  3. Ingrese su comando en el campo de texto.

Ahora, cuando se abra el Terminal, ese comando se ejecutará automáticamente.

Si deseas poder iniciar Terminal y abrir una ventana que no ejecute el comando automáticamente, ignora los pasos anteriores y sigue los siguientes pasos:

  1. En la Terminal, ve a la Terminal > Preferencias.
  2. En el panel Perfiles, en la lista de la izquierda, busque el perfil predeterminado y selecciónelo.
  3. En la parte inferior izquierda, haga clic en el icono de la rueda dentada ⚙ y haga clic en "Duplicar perfil". Etiquete el duplicado con algo que indique que el comando no se ejecutará en este perfil.
  4. De vuelta en el perfil predeterminado, debajo de la etiqueta de Inicio, marque la casilla de verificación "Ejecutar comando:" e ingrese su comando en el cuadro de texto. Asegúrese de que la casilla "Ejecutar dentro del shell" también esté marcada.
  5. Cierre el terminal y vuelva a iniciar. Cuando se abre una ventana, debería ejecutar su comando por defecto. Para abrir una ventana de Terminal sin que se ejecute su comando, vaya a Shell > Nueva ventana > Nombre del perfil duplicado.
respondido por el Thomas Jones 22.07.2015 - 00:09

Lea otras preguntas en las etiquetas