59 votes

Comment ajouter la date de la commande UNIX à une instruction echo

Fondamentalement, je veux que le terminal affiche un message suivi de la date et de l'heure, comme "Bonjour, aujourd'hui est -dateandtime-".

Ainsi, echo peut accomplir le premier bit et date peut accomplir le dernier, mais seulement séparément, comment puis-je les assembler (en une seule commande) pour qu'ils sortent ensemble.

Comme

écho bonjour là-bas

-nouvelle commande-

Date

Le fait, mais pas en une seule ligne. Le pipeline est-il la réponse ?

98voto

jlliagre Points 9325

Cela le fera :

  echo "Hi, today is $(date)"

18voto

zellio Points 8863

La date et l'heure prendront une chaîne de format arbitraire.

 > date +"Hi, today is - %a %b %e %H:%M:%S %Z %Y"
  Hi, today is - Thu Feb 2 03:28: CET 2012

6voto

Josepanaero Points 136
echo Hello there, today is `date`

Vous pouvez également formater la sortie de la date à l'aide de modificateurs tels que :

 echo Hello there, today is `date +%D`

Voir man date pour une liste complète des modificateurs.

4voto

ultra Points 51

Backtick fera l'affaire :

 echo "Hi, today is" `date`

2voto

William Pursell Points 56211

Pour ce problème particulier, la solution de mimisbrunnr est la bonne voie à suivre. Pour la question générale de savoir comment ajouter des données à un écho, certaines techniques courantes sont :

 $ echo 'Bonjour, c'est aujourd'hui' | tr -d '\012'; Date
 Bonjour, nous sommes aujourd'hui le mercredi 1 février à 18:11:40 MST 2012
 $ echo -n 'Salut, aujourd'hui est '; Date
 Bonjour, nous sommes aujourd'hui le 1er février à 18:11:43 MST 2012
 $ printf 'Bonjour, aujourd'hui est '; Date
 Bonjour, nous sommes aujourd'hui le 1er février à 18:11:48 MST 2012

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X