Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/05/2013, à 15:40

mond14

(Résolu) remplacer le deuxième champs par une chaine

Bonjour,
j'espère que vous allez tous très bien,

j'ai un document texte qui contient des lignes et des champs qui sont séparer par un ; (point_virgule).

je veux par exemple toujours remplacer le deuxième champs par une chaine "name".sachant que le seuxième champs n'a pas une valeur fixe.
l'exemple:

GF3423;1425431;7652;0;20;HGR454
YTU426;1865413;7659;0;20;HGR874
GFHG23;1872578;7872;0;20;HGY754
YTU428;1945324;76999;0;20;HGI897

Merci pour votre aide

Dernière modification par mond14 (Le 21/05/2013, à 17:39)

Hors ligne

#2 Le 21/05/2013, à 16:16

credenhill

Re : (Résolu) remplacer le deuxième champs par une chaine

hello

$ sed 's/;[^;]*/;name/' fichier
GF3423;name;7652;0;20;HGR454
YTU426;name;7659;0;20;HGR874
GFHG23;name;7872;0;20;HGY754
YTU428;name;76999;0;20;HGI897
$

Dernière modification par credenhill (Le 21/05/2013, à 16:17)

Hors ligne

#3 Le 21/05/2013, à 16:20

mond14

Re : (Résolu) remplacer le deuxième champs par une chaine

Bonjour,

Merci beaucoup MOnsieur pour ton aide!!

je vous remercie encore! :-)

Hors ligne

#4 Le 21/05/2013, à 16:30

credenhill

Re : (Résolu) remplacer le deuxième champs par une chaine

et avec awk

$ awk 'BEGIN{FS=OFS=";"} {$2="name"; print}' fichier
GF3423;name;7652;0;20;HGR454
YTU426;name;7659;0;20;HGR874
GFHG23;name;7872;0;20;HGY754
YTU428;name;76999;0;20;HGI897
$

Hors ligne