0 votos

Lanzar script después de que el comando termine

Me encuentro ejecutando algunos scripts/comandos largos y no quiero esperar a mirarlos hasta que terminen. Por otro lado, me gustaría saber de inmediato cuando termina. Sé que se puede hacer el truco con && pero parece que hay que teclear mucho.

¿Hay alguna manera de hacer esto poniendo un gancho de post-ejecución en bash? Sé que esto está relacionado con Bash y no tanto con OS X, pero tal vez haya algo oculto en OS X.

1voto

Phill Puntos 126

No hay un gancho de post-ejecución, sólo un gancho de pre-ejecución: si se establece, el valor de la variable shell PROMPT_COMMAND se ejecuta antes de emitir el aviso. Véase hombre de la fiesta para más detalles.

Una opción sería crear una función que le diga a Terminal que emita un pitido después de que se ejecute el comando largo, para saber cuándo termina. Dicha función sería:

$ function r { $@; beep; yourscript; }

Tu script se lanzará automáticamente después de que Terminal emita un pitido.

Utiliza la función para ejecutar esos comandos largos como este:

$ r longcommand

Puede añadir la función a su .bashrc para evitar definirlo cada vez.

Si no te gustan los timbres sonoros, puedes decirle al Terminal que parpadee en su lugar:

enter image description here

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X