Horloge géante dans le terminal

mercredi 14 octobre 2020 · 1 minute · 204 mots

Cette note explique comment afficher une horloge géante sous Linux sans utiliser de programme particulier ni utiliser une application web comme time.is. Avec juste votre terminal et quelques commandes, vous pourrez obtenir ce qui suit :

This shows a black terminal window with the hour in very big letters.

Nous devons installer “figlet”, un outil permettant d’afficher des caractères énormes dans le terminal :

sudo apt install figlet

Ensuite, dans votre terminal, tapez la commande suivante :

while true; do printf '\033[2J\033[H'; date +'%T' | figlet -ctW; sleep 1; done

Explication rapide :

while true; do ... ; done

Définit une boucle infinie. Pour l’arrêter, utilisez la combinaison de touche CTRL + C.

printf '\033[2J\033[H'

Efface l’écran et positionne le curseur tout en haut et à gauche. La séquence d’échapement \033[2J permet d’effacer tout l’écran et \033[H envoi le curseur en haut à gauche. cf la page Wikipedia en anglais sur tous les codes d’échappement ANSI pour avoir d’autres séquences utiles.

date +'%T'

Affiche l’heure sous la forme heure:minutes:secondes (raccourci pour %H:%M:%S).

| figlet -ctW 

Affiche le résultat avec de grandes lettres. Remarquez la présence de la barre verticale | qui permet de signifier que le résultat de la commande précédente (date) devient l’entrée de la commande figlet.

sleep 1

Patiente pendant 1 secondes avant de recommencer.

linux shell