Extraire des lignes suivant la valeur d'une colonne

Le
brunoml
Bonjour,

J'ai une srie de fichier texte dans un rpertoire.

Je voudrais avoir toutes les lignes de tous ces fichiers qui contiennent l=
a valeur
"abc" dans les caractres 100,101,102 (une colonne de 3 caractre).

Je n'arrive pas indiquer grep de tester la valeur d'une colonne (je pe=
ux
extraire avec un cut ou awk, mais je n'arrive pas faire la liaison ave=
c grep
pour avoir les lignes compltes).

Merci par avance,
--
Bruno
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Francois Mescam
Le #8457681
Le Fri, Dec 16, 2005 à 12:18:55PM +0100, brunoml a écrit
Bonjour,

J'ai une série de fichier texte dans un répertoire.

Je voudrais avoir toutes les lignes de tous ces fichiers qui contiennent la valeur
"abc" dans les caractères 100,101,102 (une colonne de 3 caractère).



Y-a-t-il des caractères particuliers avant et après abc ?


Je n'arrive pas indiquer à grep de tester la valeur d'une colonne (je peux
extraire avec un cut ou awk, mais je n'arrive pas à faire la liaison avec grep
pour avoir les lignes complètes).

Merci par avance,
--
Bruno



--
Francois Mescam



--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Eddy
Le #8457661
brunoml wrote:

Bonjour,




salut

J'ai une série de fichier texte dans un répertoire.

Je voudrais avoir toutes les lignes de tous ces fichiers qui contiennent la valeur
"abc" dans les caractères 100,101,102 (une colonne de 3 caractère).

Je n'arrive pas indiquer à grep de tester la valeur d'une colonne (je peux
extraire avec un cut ou awk, mais je n'arrive pas à faire la liaison avec grep
pour avoir les lignes complètes).

Merci par avance,




ce ne serait pas cette expression régulières dont tu as besoin ?

n'importe quoi repeté 99 fois avant le motif abc

grep -e '.+{99}abc' *.txt





--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Jean-Michel Schelcher
Le #8457641
On 16/12 14:14, brunoml wrote :

> n'importe quoi repeté 99 fois avant le motif abc
> grep -e '.+{99}abc' *.txt



mmmh, pas plutôt celà ?

grep -e "^.{99}abc" *.txt

^ pour dire qu'on commence depuis le début de la ligne
et le + est de trop je pense.

Cordialement,

Jean-Michel
brunoml
Le #8457631
On 16 Dec 2005 at 13:11, Eddy wrote:

brunoml wrote:

>Bonjour,
>
>
salut

>J'ai une série de fichier texte dans un répertoire.
>
>Je voudrais avoir toutes les lignes de tous ces fichiers qui contiennen t la valeur
>"abc" dans les caractères 100,101,102 (une colonne de 3 caractère).
>
>Je n'arrive pas indiquer à grep de tester la valeur d'une colonne (je peux
>extraire avec un cut ou awk, mais je n'arrive pas à faire la liaison avec grep
>pour avoir les lignes complètes).
>
>Merci par avance,
>
>
ce ne serait pas cette expression régulières dont tu as besoin ?

n'importe quoi repeté 99 fois avant le motif abc

grep -e '.+{99}abc' *.txt



L'idée me paraît correspondre à mon problème, mais ce grep ne me s électionne
aucune ligne :-( Pourtant, j'ai bien 99 fois "n'importe quel" caractère" avant la
chaine "abc"...
En tout cas, merci.
--
Bruno
brunoml
Le #8457621
On 16 Dec 2005 at 13:14, Francois Mescam wrote:

Le Fri, Dec 16, 2005 à 12:18:55PM +0100, brunoml a écrit
> Bonjour,
>
> J'ai une série de fichier texte dans un répertoire.
>
> Je voudrais avoir toutes les lignes de tous ces fichiers qui contienne nt la valeur
> "abc" dans les caractères 100,101,102 (une colonne de 3 caractère) .

Y-a-t-il des caractères particuliers avant et après abc ?



Non, je ne peux donc pas identifier des "séparateurs".

>
> Je n'arrive pas indiquer à grep de tester la valeur d'une colonne (j e peux
> extraire avec un cut ou awk, mais je n'arrive pas à faire la liaison avec grep
> pour avoir les lignes complètes).
>
> Merci par avance,
> --
> Bruno

--
Francois Mescam



--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To: "

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact n.org




--
Bruno
Jean-Damien Durand
Le #8457611
On Friday 16 December 2005 14:17, Jean-Michel Schelcher wrote:
JS > > > n'importe quoi repeté 99 fois avant le motif abc
JS > > >  grep -e '.+{99}abc' *.txt
JS >
JS > mmmh, pas plutôt celà ?
JS >
JS > grep -e "^.{99}abc" *.txt

-E au lieu de -e a priori... non?

grep -E "^.{99}abc" *.txt

A+, JD.
Tiago Saboga
Le #8321981
Em Sex 16 Dez 2005 11:22, Jean-Damien Durand escreveu:
-E au lieu de -e a priori... non?



Avec grep GNU, pas necessairement. De la page de manuel:

Grep understands three different versions of regular expression syntax:
"basic," "extended," and "perl." In GNU grep, there is no differe nce
in available functionality using either of the first two syntaxes.

S'il y a des soucis de portabilité, peut-être.

[]s,

tiago.
Publicité
Poster une réponse
Anonyme