SED-Awk-grep

Résolu/Fermé
Douguiss Messages postés 4 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 25 juin 2013 - Modifié par Douguiss le 24/06/2013 à 23:50
Douguiss Messages postés 4 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 25 juin 2013 - 25 juin 2013 à 16:06
Bonjour,

Excusez-moi j'aimerais avoir un éclaircis je suis confus comme je sais qu'il y'a des têtes ici alors j'aimerais savoir comment extraire plusieurs lignes d'un fichier à partir d'une chaîne de caractère.

Par exemple:

j'ai un fichier du nom extraction_BI.txt

quand je fais:
cat extraction_BI.txt


info:homme
nom:Gerard
prenom:dupont
age:44
taille:grand
lieu de naissance:espagne
status:célibataire
travail:oui
fonction:employé

info:femme
nom:Alice
prenom:dupont
age:54
taille:moyenne
lieu de naissance:Chine
status:mariée
travail:non
fonction:retraitée

....

info:...
nom:...
prenom:...
age:..
taille:...
lieu de naissance:...
status:...
travail:...
fonction:...

Mon souci j'aimerais extraire sous cette forme

info nom taille travail fonction
homme Gerard grand oui employé
femme Alice moyenne non retraitée
.... ... ... ... ....

voila je vous serai reconnaissant Mme et M pour votre aide.
Encore merci d'avance pour ceux qui me consacreront un peu de leur temps afin de m'aider.

Cdt,





1 réponse

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
25 juin 2013 à 08:39
hello
$ awk -F ":" 'BEGIN{print "info\tnom\ttaille\ttravail\tfonction"} /info|^nom|taille|travail/ {printf $2 "\t"} /fonction/ {print $2}' fichier
info	nom	taille	travail	fonction
homme	Gerard	grand	oui	employé
femme	Alice	moyenne	non	retraitée
$ 
2
Douguiss Messages postés 4 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 25 juin 2013
25 juin 2013 à 16:06
Merci tu es un génie Bravo ça marche du feu de DIEU,
Gros Bisouuuuuuuuuuuu :D
je suis trop content
0