Bash
Éviter la date en utilisant printf
Recherche…
Introduction
Dans Bash 4.2, une conversion temporelle intégrée de shell pour printf
été introduite: la spécification de format %(datefmt)T
permet à printf
sortir la chaîne date-heure correspondant à la chaîne de format datefmt
telle que comprise par strftime
.
Syntaxe
- printf '% (dateFmt) T' # dateFmt peut être n'importe quelle chaîne de format reconnue par strftime
- printf '% (dateFmt) T' -1 # -1 représente l'heure actuelle (par défaut pour aucun argument)
- printf '% (dateFmt) T' -2 # -2 représente l'heure à laquelle le shell a été appelé
Remarques
Utiliser printf -v foo '%(...)T'
est identique à foo=$(date +'...')
et enregistre une fourchette pour l'appel à la date
programme externe.
Obtenez la date actuelle
$ printf '%(%F)T\n'
2016-08-17
Définir la variable à l'heure actuelle
$ printf -v now '%(%T)T'
$ echo "$now"
12:42:47
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow