Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Extraire des lignes suivant la valeur d'une colonne

7 réponses
Avatar
brunoml
Bonjour,

J'ai une s=E9rie de fichier texte dans un r=E9pertoire.

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

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

Merci par avance,
--
Bruno

7 réponses

Avatar
Francois Mescam
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
Avatar
Eddy
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
Avatar
Jean-Michel Schelcher
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
Avatar
brunoml
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
Avatar
brunoml
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
Avatar
Jean-Damien Durand
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.
Avatar
Tiago Saboga
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.