Rechercher : dans
Par :

Selection de lignes dans un fichier

Dernière réponse le 22 oct 2003 à 15:23:57 cagnion, le 22 oct 2003 à 12:12:48 
 Signaler ce message aux modérateurs

Bonjour,

Je souhaiterais selectionner certaines lignes contenant un motif présent à une colonne définie dans un fichier plat.

Si j'utilise la séquence d'instruction :
cat fichier | grep "motif" | cut -c72,77
j'affiche uniquement le motif mais pas les lignes contenant ce motif.

Avez vous une solution ?

Est il possible de faire cette opération sans écrire un script ?

Merci d'avance. Bonne journée

Meilleures réponses pour « Selection de lignes dans un fichier » dans :
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
[Audio] Convertir un fichier m4a ou m4b en mp3 VoirAvec iTunes *Ouvrir iTunes Cliquer sur Edition / Préférences / Avancé / Importation Puis choisir "Encodeur mp3" Ensuite sélectionner les fichiers à convertir puis en cliquant avec le bouton droit "Convertir en mp3" Avec dbPowerAmp ...
Découpage et ré-Assemblage de fichier avec Xtremsplit VoirDécoupage et Assemblement de fichier avec Xtremsplit Découpage de fichier : Lancer Xtremsplit Sélectionner "couper". Cliquer sur "S" pour sélectionner le fichier à découper.

1

francoispgp, le 22 oct 2003 à 12:44:29

Cat -n titi | grep -e motif -e numerodeligne

te donnera les lignes entieres et la selection par numerodeligne.

Répondre à francoispgp

4

cagnion, le 22 oct 2003 à 15:08:57

Merci pour ta réponse mais je ne connais pas les numéros de ligne par avance .

Donc comment faire ?

Répondre à cagnion

2

asevere, le 22 oct 2003 à 13:17:43

Salut,

cat fichier | grep "motif" | cut -c72,77


Avec cette commande, tu recupere la suite de caracteres de 72 à 77 des lignes contenant "motif" du fichier 'fichier"... est-ce bien ce que tu veux faire ?
ne voudrais-tu pas putot recuperer les lignes du fichier "fichier" qui contiennent "motif" entre le caratére 72 et 77 ?
Dans ce cas,
cat fichier | cut -c72,77 | grep "motif" 

serait plus approprié... ca ne te renvera encore que les caractére de 72 à 77, mais au moins, si "motif" est present dans une autre ligne mais pas a cet endroit ca n'apparaitra pas...

Le mieux pour ce genre d'operation etant quand meme d'utiliser sed ou awk, au choix
man awk pour + d'info :)
@++

"Si c'est stupide et que ça marche,
        alors ce n'est pas stupide"

Répondre à asevere

3

cagnion, le 22 oct 2003 à 15:06:06

Mais le problème est que je souhaiterais que l'instruction me ramène les lignes entières contenant le motif et pas uniquement le motif.

Répondre à cagnion

5

 asevere, le 22 oct 2003 à 15:23:57

REgarde les page man de sed et awk surtout awk je pense...
@++

"Si c'est stupide et que ça marche,
        alors ce n'est pas stupide"

Répondre à asevere
Collection CommentÇaMarche.net