On Thu, Nov 03, 2011 at 11:01:30PM +0100, Jean-Pierre Rupp wrote: > Nice hacks! Merci, mais je me disais qu'on *doit* pouvoir faire plus ``simple''... (sed est un outil puissant!)
> Le 2 novembre 2011 15:26, Félix Hauri <[email protected]> a écrit : > > $ eval $( > > env LANG=fr_CH date +"$( > > date --help | > > sed -ne '/^ %[^ %]\{1,4\} .*$/{ > > s/^ %\([^ ]*\) .*$/\1/; > > y|:|_|; > > p; > > y|_|:|; > > p}' | > > xargs printf "DATE_%s=\"%%%s\" " > > )" > > ) > > ... > > $ echo $DATE_{x,X} > > 02. 11. 11 15:14:39 $ eval $( env LANG=fr_CH date +"$( date --help | sed -ne '/^ %[^ %]\{1,4\} .*$/{ s/^ *%\([^ ]*\) .*$/DATE_\1=\"%\1\"/; :l; /[^:%]:/{ s/:/_/; tl}; p}' )" ) $ echo $DATE_{x,X} 05. 11. 11 10:33:40 Au passage, vous aviez bien sûr compris que si ``LANG=C'' au lieu de ``LANG=fr_CH'', alors: $ echo $DATE_{x,X} 11/05/11 10:31:26 de même que si ``LANG=fr_CH.UTF-8'', alors $DATE_B pourrait donner: ``février'', en particulier dans une console en Latin-1: $ eval $(env LANG=fr_CH.UTF-8 date -d '2000/02/01 12:34:56' +"$(date --help | sed -ne '/^ %[^ %]\{1,4\} .*$/{s/^ *%\([^ ]*\) .*$/DATE_\1=\"%\1\"/; :l;/[^:%]:/{s/:/_/;tl};p}')") $ echo $DATE_{A,d,B,Y,T} mardi 01 février 2000 12:34:56 (Dois-je préciser que j'utilise le charset Latin-1!?) -- Félix Hauri - <[email protected]> - http://www.f-hauri.ch _______________________________________________ gull mailing list [email protected] http://forum.linux-gull.ch/mailman/listinfo/gull
