GNU/Linux >> Tutoriales Linux >  >> Linux

Recibir notificación cuando se realiza una tarea de terminal

Prefiero el modo CLI sobre la GUI para hacer la mayoría de las tareas en mi caja de Linux, y estoy seguro de que la mayoría de ustedes también lo harán. Cuando ejecuto un comando que tarda mucho tiempo en completarse, reviso la Terminal constantemente para asegurarme de si la tarea se completó o no. Digamos, por ejemplo, cuando actualizo mi sistema Arch, sigo revisando la Terminal para saber si la tarea dada se completó o no. ¡Ya no! Hoy, me topé con un script útil llamado NotiFyre que le notifica con una ventana emergente cuando se realiza una actividad en la Terminal.

Lo probé en el escritorio Ubuntu 16.04 LTS y funciona bien como se describe a continuación.

Recibe una notificación cuando se realiza una tarea de terminal usando NotiFyre

Asegúrese de haber instalado los siguientes requisitos previos.

$ sudo apt-get install notify-osd pulseaudio-utils libnotify-bin

Generalmente, estos requisitos previos se instalarán de forma predeterminada en la mayoría de las distribuciones de Linux. Para comprobar si la notificación-osd está funcionando o no, ejecute el siguiente comando desde su Terminal.

notify-send "hello"

El comando anterior abrirá una ventana emergente que muestra un mensaje "hola". Si no aparece ningún mensaje, significa que notificar-OSD no está funcionando. Intente reinstalar los requisitos previos anteriores como se muestra a continuación.

$ sudo apt-get --reinstall install libnotify-bin notify-osd

Ahora ejecute el comando de notificación y envío y vea si aparece el mensaje.

A continuación, descargue o git clone el script de NotiFyre desde su página de GitHub. El enlace se adjunta al final de esta guía.

Luego, abra la carpeta NotiFyre. Copie los siguientes archivos y colóquelos en su carpeta HOME si usa el shell BASH.

  • bash-preexec.sh
  • notifyre.sh
  • terminal.png

Luego, edite el archivo bashrc:

$ sudo vi ~/.bashrc

Agregue las siguientes líneas al final.

source ~/notifyre.sh
source ~/bash-preexec.sh

Guarde y cierre el archivo. Luego, ejecute el siguiente comando para aplicar los cambios guardados.

$ source ~/.bashrc

Ahora, ejecute cualquier tarea en su Terminal, se le notificará cada vez que se complete un comando.

Genial, ¿no?

Consulte también esta herramienta similar:

  • Undistract-me:recibe una notificación cuando se completan los comandos de terminal de ejecución prolongada

Si usa cáscara de pescado , necesitas colocar el terminal.pngprompt_pwd.fish , notifyre.fish y nf.fish archivos en su ~/.config/fish/functions/ carpeta. Luego edite sus funciones/fish_prompt.fish archivo y agregue las siguientes líneas justo antes del final.

function fish_prompt
    ...

    eval (notifyre)  
end

Puede cambiar el sonido de notificación (tono) editando esta línea en notifyre.sh archivo.

ALERT=/usr/share/sounds/ubuntu/notifications/Slick.ogg

Además, puede cambiar el tiempo del intervalo de notificación editando la siguiente línea en el archivo notificar.sh.

[ $(($(date +%s) - start)) -le 0 ] || notify-send "Terminal process" "$(echo [email protected]) completed in $(($(date +%s) - start)) seconds" -i ~/terminal.png -t 2000

Ahora, no tienes que revisar constantemente la Terminal para saber si una tarea ha terminado o no. Simplemente ejecute y olvídese de la tarea de terminal de larga ejecución. NotiFyre se encargará de ello y le notificará una vez que la tarea haya terminado.

Y eso es todo. Espero que esto haya sido útil. Más cosas buenas por venir. ¡Estén atentos!

¡Salud!


Linux
  1. ¿Obtener una lista de todos los archivos por máscara en la terminal?

  2. ¿Es posible obtener un carácter en el cursor de la terminal usando códigos de escape Ansi?

  3. ¿Está creando una secuencia de comandos para mostrar una notificación cuando haya actualizaciones disponibles?

  4. ¿Notificación emergente cuando llega a las 4:00 p. m.?

  5. ¿Los procesos en segundo plano obtienen un SIGHUP al cerrar la sesión?

5 cosas que hacer cuando la GUI de su sistema Linux se congela

Obtenga calificaciones y reseñas de películas directamente en su terminal

Undistract-me:Reciba una notificación cuando se completen los comandos de terminal de ejecución prolongada

Cómo mostrar asteriscos cuando escribe una contraseña en la terminal

Ejemplos de comandos de pantalla:Obtener el control de la terminal Linux / Unix

obtener una notificación cuando el servicio supervisado por systemd entre en un estado fallido