J'ai créé un alias de la commande date pour afficher la date au format suivant:
2013.06.14.12.10.02
en utilisant cette commande:
alias date = date +"%Y.%m.%d.%H.%M.%S"
Tout fonctionne très bien, sauf que je veux supprimer les zéros de tête de la sortie.
Il n'y a aucun moyen d'y arriver en changeant le format. Je pense que cela ne peut être fait qu'en canalisant la sortie vers d'autres commandes comme sed
et awk
.
Le système d'exploitation que j'utilise est Ubuntu 12.04.2 LTS.
Selon la page de manuel GNU date
:
By default, date pads numeric fields with zeroes. The following
optional flags may follow '%':
- (hyphen) do not pad the field
Vous pouvez donc faire
alias date="date '+%Y.%-m.%-d.%-H.%-M.%-S'"
et recevoir
2013.6.14.3.19.31
Ça fait idiot, mais puisque cette question est étiquetée avec /sed
, voici un moyen de le faire avec sed, comme vous l'aviez mentionné :)
alias date='date +"%Y.%m.%d.%H.%M.%S" | sed "s/^0*//g; s/\.0*/./g"'