Patrick CAO HUU THIEN a écrit, mardi 25 novembre 2008, à 13:26 :
> Jacques L'helgoualc'h a dit le 11/21/2008 05:11 PM:
> merci jacques mais ce n'est pas tout a fait ca que je recherche. J'ai du 
> mal m'expliquer.
>
> J'ai plusieurs fichiers avec tous
> - f1 ---------
> 5 100 25.3
> 5 1000 63.2
>
> - f2 -------
> 5 100 58.36
> 5 1000 47.362
>
> et je voudrais ceci:
>
> 5 100 25.3 58.36
> 5 1000 63.2 47.362
>
> je pense que la piste de sylvain «paste» me semble plus prometteuse.

Avec paste, si tu  es sûr de l'ordre, tu ne fais  que mettre côte à côte
les différents fichiers, et il faut une autre étape avec awk ou cut pour
éliminer les colonnes redondantes modulo 3.

Tu peux aussi filtrer avant, quand le nombre de fichiers est connu :

~ $ paste -d' ' f1 <(cut -d' ' -f3 f2)
5 100 25.3 58.36
5 1000 63.2 47.362


Le hachage Awk  --- transposable en Perl ou autre ---  que je te propose
est assez simple, plus souple quant  au format et au nombre de données à
regrouper, et moins exigeant sur l'ordre des lignes (mais ne le respecte
pas en l'état (si tu y  tiens, c'est facile en comptant les lignes (non,
je ne propose pas une solution (e)lisp :))).

 awk '[script]' f1 f3 ... fn > r1

où certains fk peuvent déjà être des récapitulations partielles.
-- 
Jacques L'helgoualc'h

-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Répondre à