84 votes

Ajouter des horodatages aux invites du terminal ?

Je me demandais s'il était possible d'ajouter des horodatages aux invites du terminal et, si oui, comment y parvenir ?

4voto

Mats Fredriksson Points 7136
export PROMPT_COMMAND=date

imprime la date avant l'émission de chaque invite.

2voto

trwood Points 21

Ouvrez votre .bashrc via

vim ~/.bashrc

et ajoutez ensuite ce qui suit à .bashrc :

#PS1="[\A \u@\h \W\a]$" 

donde \A est pour le temps ( \W pour seulement la fin du chemin, supprimer si vous voulez le chemin complet du répertoire de travail actuel). Ensuite, tapez

source ~/.bashrc

Vous verrez quelque chose comme ceci :

[16:04 trwood@cobalt04 ~/MCEq_dev]$

0voto

qwertyzw Points 111

Juste pour ajouter à la réponse de @devav2 :

Une commande echo plus facile à lire pour les débutants serait :

export PROMPT_COMMAND='echo -n "$(date +%H:%M:%S) "'

Au lieu de

export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "

Comme la commande echo n'est pas censée être évaluée au moment de l'exportation, il est plus logique d'utiliser des guillemets simples pour les citations littérales plutôt que des guillemets doubles. L'utilisation de guillemets simples pour citer l'ensemble de la commande vous permet ensuite d'utiliser des guillemets doubles pour citer l'argument de la commande echo, éliminant ainsi la nécessité d'échapper les caractères spéciaux tels que , [ y $

0voto

Marco Sulla Points 573

Je pense que la bonne façon de procéder est de localiser en $HOME/.bashrc les codes qui fixent PS1 commentez-les et ajoutez des éléments personnels. Voici mon bloc par exemple :

PS1_DATE="\D{%Y-%m-%d %H:%M:%S}"

if [ "$color_prompt" = yes ]; then
    PS1="[$PS1_DATE \[\e]0; \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[\033[00m\]\[\033[01;34m\]\w \[\033[00m\]\$] "
    #PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='[$PS1_DATE ${debian_chroot:+($debian_chroot)}\w \$] '
    #PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi

Sortie :

[2019-06-18 15:54:29 ~/Desktop $] echo "It's late!"

0voto

WinEunuuchs2Unix Points 91128

Mon temps est similaire à celui de la cowsay réponse ci-dessus. Vous devez mettre now votre ~/.bashrc mais vous pouvez aussi l'appeler depuis le terminal en tapant now .

Voici une capture d'écran :

now.png

Le code bash est affiché dans cette réponse très détaillée :

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X