boucle shell a 2 variable

boucle shell a 2 variable - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 23-12-2013 à 10:59:01    

Bonjour,  
je suis novice en scripts et j'aimerai pouvoir ajouter dans ma boucle ci-dessous une 2eme variable qui prendrai la valeur du deuxième champ ($2) de mon fichier toto.txt mais je n'y arrive pas, quelqu'un a t-il une solution pour moi.
Merci pas avance
 
  for i in `cat toto.txt |awk ' { print $1}'`
  do
    echo "$i"
  done

Reply

Marsh Posté le 23-12-2013 à 10:59:01   

Reply

Marsh Posté le 23-12-2013 à 13:30:44    

Si j'ai bien ce compris c que tu veux faire, il te faut passer par un "read", donc une boucle while.
 
Exemple :

Code :
  1. cat toto.txt | while IFS=';' read var1 var2
  2. do
  3.   :
  4. done


 
La valeur contenu dans l'IFS est bien sur ton séparateur de champs dans le fichier toto.txt.
Remarque : ceci suppose que tu n'as que 2 champs dans ton fichier. Si tu en a plus, "var2" contiendra tout sauf le premier champ. Il ne faut donc pas hésiter à mettre une variable bidon en plus pour t'épargner des problèmes si tu ne maitrise pas le fichier.

Reply

Marsh Posté le 01-01-2014 à 15:52:35    

Il suffit surtout de virer le |awk dans son script ça marchera aussi bien...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed