Et voila le résultat :

#!/bin/bash

while read line
do
champ1=$(echo "$line"|awk '{print $1}')
champ2=$(echo "$line"|awk '{print $2}')

echo "ou=$champ1 dc=$champ2" >> resultat

done < test

Sinon, une petite astuce, évite d'appeler tes fichiers 'test' car c'est
une commande unix.


Bonne chance.



Le mercredi 19 mars 2008 à 10:19 +0100, Tahar a écrit :

> Bonjour à tous,
> 
> Je voudrais solliciter votre aide pour un petit script que j'ai fait
> mais qui ne marche pas exactement comme je le veux.
> 
> Alors voilà; j'ai un fichier texte de deux colonnes séparées par une
> tabulation je voudrais produire un autre fichier en le parcourant
> ligne par ligne et en rajoutant des paramètres pour chaque ligne
> 
> mon fichier de départ est sctructuré comme suit
> 
> lingne1colonne1      ligne1colonne2
> ligne2colonne1        ligne2colonne2
> ligne3colonne1        ligne3colonne2
> .
> .
> .
> .
> 
> 
> j'ai utilisé awk pour retenir les champs $1 et $2 dans des variables
> et redirigé le résultat dans un autre fichier avec echo "mes rajouts
> $var1 mes rajouts $var2" >> fich_resultat
> 
> sauf que au lieu d'avoir une seul ligne j'ai l'ensemble de $1 et $2 de
> toutes les lignes quelqu'un pourrait me dire comment faire ??
> 
> voici mon script 
> 
> !/bin/bash
> 
> while read line
> do
> 
> champ1=$(awk -F" " '{print($1)}' test)
> champ2=$(awk -F" " '{print($2)}' test)
> 
> echo "ou=$champ1 dc=$champ2">> resultat
> 
> done < test
> 
> 
> merci pour votre aide

Répondre à