open mac commands comandos macos terminal

macos - mac - OSX-Cómo cerrar automáticamente la ventana del terminal después de ejecutar el comando "salir".



terminal mac commands (12)

Crea una secuencia de comandos:

cat ~/exit.scpt

Me gusta esto:

  • Nota: si solo hay una ventana, simplemente salga de la aplicación, de lo contrario simule el command + w para cerrar la pestaña)

tell application "Terminal" set WindowNum to get window count if WindowNum = 1 then quit else tell application "System Events" to keystroke "w" using command down end if end tell

Luego agrega un alias en tu * shrc

al igual que vi ~/.bashrc o zshrc (¿algo más?)

agréguela: alias exit="osascript ~/exit.scpt"

Y fuente ~ / .bashrc o vuelva a abrir su terminal.app

Cuando termine con la Terminal, quiero salir de ella. En este momento, tengo tres opciones:

  1. Terminal killall. Terminará el proceso, pero de manera abrupta. No creo que esta sea la mejor idea.

  2. Salida de llamada Cambié la configuración para salir cierra Terminal. La aplicación sigue apareciendo abierta en el Dock y no hace lo que yo quiero que haga.

  3. Haga clic derecho> Salir. Sin embargo, este no es un comando de Terminal para salir de él.

Entonces, ¿cuál es la forma en que debería salir y cerrar Terminal? He oído algo sobre osascript, pero no estoy muy seguro. Quiero salir y cerrar, para que Terminal ya no esté abierto, como una ventana y como un proceso.


¿Qué tal el buen viejo Command-Q?


En la aplicación Terminal, pestaña Preferencias >> Perfiles .

Seleccione la pestaña de Shell a la derecha.

Puede elegir Nunca preguntar antes de cerrar para suprimir la advertencia.


En una ventana de terminal, puede escribir:

kill -9 $(ps -p $PPID -o ppid=)

Esto matará el proceso de solicitud del Terminal, que es el padre del padre del proceso actual, como se ve por el comando kill.

Para cerrar una ventana de Terminal desde una secuencia de comandos en ejecución, debe subir un nivel más en la jerarquía de procesos de esta manera:

kill -9 $(ps -p $(ps -p $PPID -o ppid=) -o ppid=)


He estado usando

dejar -n terminal

al final de mis guiones. Debe configurar el terminal para que nunca solicite preferencias

Entonces Terminal> Preferencias> Configuraciones> Shell Cuando el shell sale Cerrar la ventana Preguntar antes de cerrar Nunca


He estado usando ctrl + d . En primer lugar, te arroja al destino donde comenzaste el comando sqlite3.


Puede usar AppleScript a través del comando osascript :

osascript -e ''tell application "Terminal" to quit''


Si se trata de una Mac, tipea ''exit'' y luego presiona return.


También puede usar este comando enrevesado, que no desencadena una advertencia sobre la finalización de su propio proceso:
osascript -e "do shell script /"osascript -e ///"tell application ///////"Terminal///////" to quit///" &> /dev/null &/""; exit

Este comando es bastante largo, por lo que podría definir un alias (como quit ) en su perfil de bash:
alias quit=''osascript -e "do shell script /"osascript -e ///"tell application ///////"Terminal///////" to quit///" &> /dev/null &/""; exit''

Esto te permitirá simplemente escribir " quit en la terminal sin tener que manipular otras configuraciones.


Use el comando osascript en su código como icktoofay mencionado: osascript -e ''tell application "Terminal" to quit''

Luego, abra las preferencias de Terminal, vaya a Configuración> Shell y configure "Solicitar antes de cerrar:" a "Nunca". El terminal ahora debe salir por completo (no permanecer abierto en su base) e ignorar el aviso antes de salir. Si solo tiene una ventana de Terminal abierta y el comando osascript es su última línea de código, debe esperar que finalice cualquier comando que osascript .

Esto no sería ideal si está ejecutando scripts en la misma ventana u otras ventanas en el fondo (por ejemplo, puede ejecutar un comando en el fondo y continuar usando la ventana actual para otros comandos si el primer comando es seguido por un símbolo comercial) ); ¡ten cuidado!

Si osascript código osascript en un archivo de script de shell, probablemente pueda llamarlo con cualquier nombre de archivo concreto que le dé, siempre que esté en la ruta de búsqueda de Terminal (ejecute echo $PATH para ver dónde busca Terminal los scripts )


en Terminal.app

Preferencias> Configuraciones> Shell

Preferencias> Perfiles> (Seleccionar un perfil)> Shell.

en ''Cuando el caparazón sale'' elegido ''Cierre la ventana''


osascript -e "tell application /"System Events/" to keystroke /"w/" using command down"

Esto simula una pulsación de tecla CMD + w .

Si desea que Terminal se cierre por completo, puede usar: osascript -e "tell application /"System Events/" to keystroke /"q/" using command down"

Esto no da ningún error y hace que la Terminal se pare limpiamente.