Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Unix
Unix Forum d'entraide sur les systèmes Unix et dérivés (*BSD, AIX, etc.). Avant de poster ->F.A.Q BSD F.A.Q. Aix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/11/2011, 09h20   #1
Membre régulier
 
Homme Francis Lennert
Développeur informatique
Inscription : novembre 2011
Messages : 52
Détails du profil
Informations personnelles :
Nom : Homme Francis Lennert
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2011
Messages : 52
Points : 86
Points : 86
Par défaut GAWK Queqstion sur la valeur de RS

Bonjour à tous,


Je dois parser avec GAWK un fichier dont le Record Separator (RS) sera une expression régulière, ceci afin de mettre une valeur devant.
Le problème est que GAWK trouve bien ce qui correspond a cette valeur mais ne l'affiche pas dans la restitution de la ligne.

Exemple :
Code :
1
2
3
A,B,
1234;C,D,
3456;F,G
Code :
1
2
3
4
BEGIN {
    RS="\n[0-9][0-9][0-9][0-9][0-9];"
}
{ print $1 ,"#######"}
J'aimerais que la restitution soit
Code :
1
2
A,B,#######,12345
C,d,#######,3456
Et non
Code :
1
2
A,B,#######
C,d,#######
Ce qui est mon résultat actuel..

Bref pouvoir écrire la valeur trouvée de RS dans la sortie.
Merci pour votre aide car je ne trouve pas cette info dans la Doc de Gawk.

Francis Lennert
Grandal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2011, 10h54   #2
Membre régulier
 
Homme Francis Lennert
Développeur informatique
Inscription : novembre 2011
Messages : 52
Détails du profil
Informations personnelles :
Nom : Homme Francis Lennert
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2011
Messages : 52
Points : 86
Points : 86
Je me réponds car ça peut intéresser d'autres forumiens.

Dans Gawk, RT contient le valeur du RS trouvé.
Donc par rapport à mon problème, il suffit de faire :

Code :
1
2
3
A,B,
1234;C,D,
3456;F,G
Code :
1
2
3
4
BEGIN {
RS="\n[0-9][0-9][0-9][0-9][0-9];"
}
{ print $1 ,"#######",RT}
pour obtenir en gros

Code :
1
2
3
4
A,B,#######
1234;
C,D,#######
3456;
Hope this helps

Francis Lennert
Grandal est déconnecté   Envoyer un message privé Réponse avec citation 20
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h32.


 
 
 
 
Partenaires

Hébergement Web