
(Específico de OSX)
Yo, como muchos otros aparte de mí, a menudo me encuentro iniciando un proceso en el shell que tarda uno o dos minutos en completarse (un compromiso svn grande, por ejemplo). Durante ese tiempo, a menudo uso la tecla Alt y actualizo reddit/slashdot/wikipedia/lo que sea. Sería fantástico tener algo configurado que publique una notificación de gruñido cuando finalice el proceso de shell.
En mi mundo ideal, funcionaría así: "Si un proceso acaba de salir de una pestaña abierta en la Terminal, publique una notificación gruñida".
¿Alguien más tiene algo como esto configurado?
Respuesta1
puedes instalargruñirnotificarpara hacer esto.
$ ./some_program && growlnotify Title -m Message
Por supuesto, necesitarás pensar en esto antes de ejecutar tu comando. La alternativa (aunque no sé cómo lograrlo) sería una notificación de gruñido para cada comando, lo que sería increíblemente molesto.
Para simplificar el uso de growlnotify para su caso de uso, edite ~/bash_profile
y agregue lo siguiente:
function long {
$@
/usr/local/bin/growlnotify Finished -m 'Done'
}
ahora puedes simplemente long your_command
(similar a sudo
). Ctrl-A
coloca el cursor al principio de la línea, si usted (como yo) siempre escribe el comando real primero y necesita agregar el prefijo después.
Desafortunadamente, mi bash-fu no es suficiente para poder agregar el comando al growlnotify
mensaje.
según el comentario de @mankoff a esta respuesta:
Simplemente puede escribir mientras se ejecuta el comando y luego se ejecutará. Creé la siguiente función para mí:
function gn {
/usr/local/bin/growlnotify Finished -m "$@"
}
Usar como gn svn
.
Respuesta2
Lo que necesita growlnotify
es un programa CLI para activar notificaciones de gruñidos. Podrías usarlo como:
./script.sh;; growlnotify -m "done"
Tiene algunas perillas más con las que puedes jugar, úsalas growlnotify -h
para obtener más información.
Respuesta3
Modificar la respuesta de Daniel Beck si haces este ligero cambio la hace muy agradable.
function long {
command=$@
$command
/usr/local/bin/growlnotify Finished -m "$command completed."
}
Luego, cuando ejecute 'long svn up' verá el mensaje 'svn up completado'.
Muy bueno si ejecutas muchos scripts de shell que consumen mucho tiempo al mismo tiempo.
Respuesta4
Usargruñirnotificar.
ls && growlnotify -H localhost -m "message"