Le samedi 09 avr 2005 � 11 h 46, Thomas a dit:

> Le 09.04.05, Steve a tapot� :
> 
> | Bonjour,
> 
>       'jour,
> 
> 
> | j'essaie d'�crire un script shell contenant du awk, et il y a un
> truc| que je ne comprends pas.
> [...]
> | for ((i=1 ; i < limite ; i++))
> | do
> |     champ=`awk '{print $i}' $tempfile`
> |     echo "Champ $i est $champ"
> | done
> |
> | et quand j'ex�cute ce script, il me sort la ligne enti�re pour
> chaque| $i, alors que moi je veux qu'il me sorte le i�me champ
> seulement..|
> | pige pas ..
> 
>       C'est un peu normal...
>       ton $i est entre des '' donc il n'est pas "expand�" par le
>       shell. champ=`awk "{print \$$i}" $tempfile`
> 
Syntaxe exacte:
        champ=`awk "{print \$ $i}" tempfile
        (backslash dollar espace dollar i, litt�ralement}

[me reste juste � bien piger pourquoi ...]

> 
> | Un petit coup de main plize
> 
>       Ouala.
> 
> 
> | merci et bon week-end
> 
>       Pas mieux :)
> 

Merci � bernard et thomas!

Répondre à