Jorge Alberto Mussuto Sr.

Jorge Alberto Mussuto Sr.
Somewhere in Massachusetts ®

Thursday, July 29, 2010

Sé notificado por Ubuntu cuando termine la ejecución de una tarea en la terminal

Sé notificado por Ubuntu cuando termine la ejecución de una tarea en la terminal: "



En 1999 el escritor de ciencia ficción Neal Stephenson escribió el excelente libro “En el comienzo fue la línea de comandos” en el que postulaba que por aquel entonces el mejor sistema operativo era BeOS, por “combinar potencia con buena interfaz gráfica, pues (…) brinda la posibilidad de abrir una ventana a la línea de comandos”. El tiempo pasó (vaya si hubo avances en estos años), Stephenson dijo que su opinión cambió al salir Mac OS X y la idea de la integración entre la línea de comandos y la interfaz gráfica es clave hoy en día tanto en BSD, Linux como Mac OS X.



Es decir, lo que hace a un sistema operativo potente es combinar la usabilidad con la potencia, permitiendo integrar la terminal (“la mejor forma de relacionarse con el mundo“, de acuerdo a Stephenson) en un entorno de escritorio completamente simple de usar. Ahora, es habitual que si hacemos alguna tarea que consuma algo de tiempo en la terminal, sea en background o no, no nos quedemos viendo qué es lo que sucede hasta que termine su ejecución. Podemos estar descargando algún archivo pesado por wget y pasará un buen par de horas hasta que la descarga se complete. En consecuencia, aunque podamos necesitar con relativa urgencia el archivo, nos podemos olvidar por completo de él.



Por eso me encantó un pequeño alias ideado por Dustin Kirkland, desarrollador de Ubuntu Server, que permite ser alertado mediante el panel de notificaciones de Gnome cada vez que termine de ejecutarse un trabajo en la terminal.



Para probarlo, primero asegurémonos de tener instalado libnotify-bin. En caso negativo:



sudo apt-get install libnotify-bin


Editamos el archivo ~/.bashrc, en el que se encuentran los alias:



gedit ~/.bashrc


Allí debemos copiar, al final del mismo, lo siguiente:



alias alert_helper='history|tail -n1|sed -e 's/^\s*[0-9]\+\s*//' -e 's/;\s*alert$//''
alias alert='notify-send -i /usr/share/icons/gnome/32x32/apps/gnome-terminal.png '[$?] $(alert_helper)''


Y finalmente:



source ~/.bashrc


Si quieren probarlo y ver cómo funciona, pueden tipear en la consola



sleep 60; alert


Como verán, lo que cambia es el “;” más el “alert”. Un ejemplo muy práctico en el que podemos ver la utilidad de esta funcionalidad es al compilar un programa, algo que puede tomar unos segundos pero, dependiendo del tamaño de la aplicación, suele llevar unos minutos. En este caso, ejecutaremos en la línea de comandos



make; alert


De este modo podrán compilar un programa mientras navegan por los blogs de Hipertextual sin estar viendo cada 20 segundos si ya terminó de compilarse, que una vez que termine el sistema operativo les avisará desde el panel de notificaciones que la tarea ha concluido.



Vía: WebUpd8


Sé notificado por Ubuntu cuando termine la ejecución de una tarea en la terminal escrita en Bitelia el 29 July, 2010 por federico-erostarbe

Enviar a Twitter | Compartir en Facebook



No comments:

Blog Archive

Quilts

Where am I?