Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications
Applications Questions sur l'utilisation d'applications, du shell, et des interfaces graphiques (KDE, Gnome, XFCE... )
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 13/11/2007, 14h20   #1
Membre du Club
 
Inscription : octobre 2005
Messages : 224
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 224
Points : 46
Points : 46
Par défaut Afficher à partir du mot recherché par un grep

Je souhaiterai afficher certains mots présents dans la ligne que me retourne un grep, je m'explique:

J'ai par exemple un fichier du type:

Code :
1
2
3
4
 
code_1 un code_2 deux code_3 trois
code_1 quatre code_2 cinq code_3 six
code_1 sept code_2 huit code_3 neuf
je souhaite afficher la ligne contenant trois, je fais donc:
Code :
1
2
 
grep trois mon_fichier
Puis je souhaite avoir le nombre situé juste derrière le code "code_2" dans les lignes contenant "trois", ici en l'occurence "deux".

Comment je dois faire?
petdelascar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 17h26   #2
Membre chevronné
 
Inscription : décembre 2004
Messages : 1 213
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 1 213
Points : 766
Points : 766
Code :
1
2
 
grep trois mon_fichier | awk '{print $4}'
salseropom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 18h16   #3
Membre du Club
 
Inscription : octobre 2005
Messages : 224
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 224
Points : 46
Points : 46
Génial, merci, je suis chiant mais on peut pas sans utiliser awk?
petdelascar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 19h31   #4
Membre Expert
 
Avatar de granquet
 
Étudiant
Inscription : octobre 2005
Messages : 1 202
Détails du profil
Informations personnelles :
Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2005
Messages : 1 202
Points : 1 181
Points : 1 181
essaye avec cut
Code sh :
grep trois mon_fichier | cut -d' ' -f4

si le delimiteur change, il faudras le changer dans lacommande,
si le delimiteur apparait plusieurs fois de suite (ex: les mots sont séparés par 3 espaces), penser à utiliser tr pour les "squizzer".
__________________
click my www
............|___
...................\
.................._|_
..................\ /
..................."
granquet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/11/2007, 13h03   #5
Membre du Club
 
Inscription : octobre 2005
Messages : 224
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 224
Points : 46
Points : 46
Citation:
grep trois mon_fichier | cut -d' ' -f4
C'est presque ça, le problème c'est que maintenant, en reprenant la ligne qui m'interrese:

Citation:
code_1 un code_2 deux code_3 trois
J'aimerai maintenant, après avoir trouvé "trois" afficher le mot qui est juste après "code_2. Merci de votre aide.
petdelascar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/11/2007, 13h11   #6
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 546
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 546
Points : 7 779
Points : 7 779
Code :
1
2
3
4
5
strx(root)[PSDBS]/nx/bn/>>cat > tt
code_1 un code_2 deux code_3 trois
strx(root)[PSDBS]/nx/bn/>>grep trois tt | cut -d" " -f4
deux
strx(root)[PSDBS]/nx/bn/>>
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h14.


 
 
 
 
Partenaires

Hébergement Web