J'obtiens un resultat qui contient un maximum de 8 caracteres. Je dois
combler le manque de caractere (s'il y a lieu) avec des zeros en debut
de chaine. Dois-je utiliser wc -c?
Le 26 Aug 2003 15:55:33 -0700, Bertrille Ethrington écrivait : [...]
quand tu ecrit
expr "000000000$x" : '.*(.........)'
est-ce que ca remplace
${#x}
ou
printf "%.*d%s" $(( 9 - ${#x} )) 0 $x
Ça prends les 9 derniers caractères de la chaine résultat de la concaténation de 000000000 (9 zeros) et $x. Donc, ça left-pad sur 9 caractères avec des zeros. Voir man expr.
quand je fais au prompt:
bash-2.05a$ for f in fic1 ; do expr "000000000$x" : '.*(.........)' $f >> fic2 ; done
J'optient:
expr: syntax error expr: syntax error
Stephane CHAZELAS <stephane_chazelas@yahoo.fr> wrote in message news:<slrnbkoopl.41.stephane_chazelas@pcchazelas.free.fr>...
Le 26 Aug 2003 15:55:33 -0700, Bertrille Ethrington <bertrille@bigfoot.com> écrivait :
[...]
quand tu ecrit
expr "000000000$x" : '.*(.........)'
est-ce que ca remplace
${#x}
ou
printf "%.*d%s" $(( 9 - ${#x} )) 0 $x
Ça prends les 9 derniers caractères de la chaine résultat de la
concaténation de 000000000 (9 zeros) et $x. Donc, ça left-pad
sur 9 caractères avec des zeros. Voir man expr.
quand je fais au prompt:
bash-2.05a$ for f in fic1 ; do expr "000000000$x" : '.*(.........)'
$f >> fic2 ; done
Le 26 Aug 2003 15:55:33 -0700, Bertrille Ethrington écrivait : [...]
quand tu ecrit
expr "000000000$x" : '.*(.........)'
est-ce que ca remplace
${#x}
ou
printf "%.*d%s" $(( 9 - ${#x} )) 0 $x
Ça prends les 9 derniers caractères de la chaine résultat de la concaténation de 000000000 (9 zeros) et $x. Donc, ça left-pad sur 9 caractères avec des zeros. Voir man expr.
quand je fais au prompt:
bash-2.05a$ for f in fic1 ; do expr "000000000$x" : '.*(.........)' $f >> fic2 ; done