GNU/Linux >> Tutoriels Linux >  >> Linux

Recevoir une notification lorsqu'une tâche de terminal est terminée

Je préfère le mode CLI à l'interface graphique pour effectuer la plupart des tâches dans ma machine Linux, et je suis sûr que la plupart d'entre vous le feront également. Lorsque j'exécute une commande qui prend beaucoup de temps, je vérifie constamment le terminal pour m'assurer que la tâche est terminée ou non. Supposons, par exemple, que lorsque je mets à jour mon système Arch, je continue de vérifier le terminal pour savoir si la tâche donnée est terminée ou non. Pas plus! Aujourd'hui, je suis tombé sur un script utile appelé NotiFyre qui vous avertit avec une fenêtre contextuelle lorsqu'une activité du terminal est terminée.

Je l'ai testé sur le bureau Ubuntu 16.04 LTS et fonctionne bien comme décrit ci-dessous.

Recevoir une notification lorsqu'une tâche de terminal est effectuée à l'aide de NotiFyre

Assurez-vous d'avoir installé les prérequis suivants.

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

Généralement, ces prérequis seront installés par défaut sur la plupart des distributions Linux. Pour vérifier si notify-osd fonctionne ou non en exécutant la commande suivante depuis votre Terminal.

notify-send "hello"

La commande ci-dessus ouvrira une fenêtre pop qui affiche un message "hello". Si aucun message n'apparaît, cela signifie que notify-osd ne fonctionne pas. Essayez de réinstaller les prérequis ci-dessus comme indiqué ci-dessous.

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

Exécutez maintenant la commande notify-send et voyez si le message apparaît.

Ensuite, téléchargez ou git clonez le script NotiFyre depuis sa page GitHub. Le lien est joint à la fin de ce guide.

Ensuite, ouvrez le dossier NotiFyre. Copiez les fichiers suivants et placez-les dans votre dossier HOME si vous utilisez le shell BASH.

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

Ensuite, modifiez le fichier bashrc :

$ sudo vi ~/.bashrc

Ajoutez les lignes suivantes à la fin.

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

Enregistrez et fermez le fichier. Ensuite, exécutez la commande suivante pour appliquer les modifications enregistrées.

$ source ~/.bashrc

Maintenant, exécutez n'importe quelle tâche sur votre terminal, vous serez averti à chaque fois qu'une commande sera terminée.

Cool, n'est-ce pas ?

Consultez également cet outil similaire :

  • Undistract-me :recevez une notification lorsque les commandes de terminal de longue durée sont terminées

Si vous utilisez Coquille de poisson , vous devez placer le terminal.pngprompt_pwd.fish , notifyre.fish et nf.fish fichiers dans votre ~/.config/fish/functions/ dossier. Ensuite, modifiez vos functions/fish_prompt.fish fichier et ajoutez les lignes suivantes juste avant la fin.

function fish_prompt
    ...

    eval (notifyre)  
end

Vous pouvez modifier le son de notification (tonalité) en modifiant cette ligne dans le notifyre.sh fichier.

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

En outre, vous pouvez modifier l'intervalle de notification en modifiant la ligne suivante dans le fichier notifyre.sh.

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

Désormais, vous n'avez plus besoin de vérifier constamment le Terminal pour savoir si une tâche est terminée ou non. Exécutez simplement et oubliez la longue tâche de terminal. NotiFyre s'en occupera et vous avertira une fois la tâche terminée.

Et c'est tout. J'espère que cela a été utile. Plus de bonnes choses à venir. Restez à l'écoute !

Santé !


Linux
  1. Créer un script pour afficher une notification lorsque des mises à jour sont disponibles ?

  2. J'obtiens une erreur lorsque j'essaie de mettre à jour Youtube-dl en 18.04 ?

  3. Comment obtenir errno lorsque epoll_wait renvoie EPOLLERR ?

  4. Les processus d'arrière-plan obtiennent-ils un SIGHUP lors de la déconnexion ?

  5. Quand /tmp est-il effacé ?

5 choses à faire lorsque l'interface graphique de votre système Linux se fige

Obtenez des notes et des critiques de films directement sur votre terminal

Undistract-me :recevez une notification lorsque les commandes de terminal de longue durée sont terminées

Comment afficher des astérisques lorsque vous tapez un mot de passe dans un terminal

Exemples de commandes d'écran :prendre le contrôle du terminal Linux/Unix

recevoir une notification lorsque le service surveillé par systemd passe en état d'échec