Comment mettre la date et l'heure toujours visibles dans le terminal

Ils disent qu'une image vaut mille mots, c'est pourquoi avant de vous expliquer quelque chose, je vais vous montrer quel est le résultat de la commande que je mettrai plus tard:

terminal_date_time

Remarquez comment, dans le coin supérieur droit, nous voyons le jour de la semaine (dimanche, dimanche), le mois (décembre), le jour (22) ainsi que l'heure, la minute, la seconde et l'année.

C'est quelque chose qui est mis à jour en temps réel, c'est-à-dire chaque seconde que les informations sont mises à jour, et ce sera toujours dans le coin supérieur droit du terminal.

C'est quelque chose d'utile car, nous pouvons éditer un fichier avec nano ou vi, nous pouvons installer n'importe quel type de service ou gérer quoi que ce soit, et nous n'aurons pas besoin d'arrêter ce que nous faisons, d'exécuter la date dans le terminal pour connaître le date ou heure, avec cette astuce que je vous montre, nous la garderons toujours à l'esprit.

Pour y parvenir dans un terminal, mettons ce qui suit:

while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done &

Ceci en tant que tel n'est pas une simple commande ou instruction, mais plutôt une union de celles-ci... allez, un script pourrait l'être aussi. L'expliquer est un peu complexe, mais je ferai de mon mieux 

  • pendant le sommeil 1; faire : Cela signifie que toutes les secondes ce qui suit sera exécuté
  • tput sc : Cela signifie que la position actuelle sera enregistrée, c'est-à-dire que la position de ce qui suivra sera enregistrée, il ne sera pas nécessaire de la spécifier après une fois.
  • tasse tput 0$ (($ (tput cols) -29)) : Cela peut sembler compliqué cependant, ce n'est pas si difficile. En gros, c'est ce que dit la position, c'est-à-dire le coin supérieur droit. Le paramètre cup spécifie l'espace vertical qui existera, puisque nous mettons 0 donc cela signifie "juste au-dessus, en haut". Une fois la position verticale définie, nous pouvons voir la position horizontale, qui est prise en charge par le reste des paramètres, ce qui pour le dire simplement… il calcule les colonnes existantes et s'assure qu'elle est juste sur le bord droit. Si vous le souhaitez, changez le nombre 29 pour les autres et vous remarquerez la différence.
  • données : Eh bien c'est simple, la date nous montre les informations que nous voyons ... jour, mois, heure, etc.
  • tput rc : Ils sont tput sc on sauvegarde la position, maintenant avec tput rc on la restaure.
  • fait : Ici, nous finissons tout, ce que nous avons commencé avec le temps.

Comme vous pouvez le constater, le terminal est sans aucun doute un espace merveilleux, si une commande ne fait pas exactement ce que nous voulons... nous pouvons en joindre plusieurs et réaliser ce que nous voulons. Considérez chaque commande comme un outil, un outil (marteau) ne peut pas faire de nous une belle statue, cependant, en unissant cet outil (marteau) avec d'autres (bois et ciseau) nous pouvons atteindre le résultat rêvé 

Oh, au fait ... si vous voulez que cela apparaisse toujours dans le terminal sans avoir à l'exécuter à chaque fois que vous ouvrez une console, vous devez le mettre dans .bashrc, c'est-à-dire:

echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc

Puis si vous voulez le supprimer, exécutez ce qui suit:

sed -i "s/while sleep 1/#while sleep 1/" $HOME/.bashrc

Eh bien rien d'autre à ajouter, j'espère que cela a été utile

salutations

STRONG

echo "while sleep 1; do tput sc; tput cup 0 \ $ ((\ $ (tput cols) -29)); date; tput rc; done &" >> $ HOME / .bashrc