Re : redirection d'un bloc de lignes[RESOLU]
Merci pour vos propositions, j'ai pu résoudre cela avec la commande grep -A3 -B2 -w "motcle" mon fichier > fichier_sortie Merci beaucoup - Message d'origine De : Edi Stojicevic <[EMAIL PROTECTED]> À : debian-user-french@lists.debian.org Envoyé le : Jeudi, 10 Avril 2008, 14h58mn 57s Objet : Re: redirection d'un bloc de lignes * Jacques L'helgoualc'h <[EMAIL PROTECTED]> [2008-04-10 14:50:29 +0200] wrote : > Tahar a écrit, jeudi 10 avril 2008, à 09:34 : > > Bonjour à tous, > > bonjour, > > > Désolé de vous ennuyer avec mes problèmes de script, mais je > > voudrais savoir s'il y a une commande ou un ensemble de commandes > > qui permettent de sortir un bloc de n lignes qui contiennent une > > expression recherché > > Sed ! > > Cf. info sed, section « addresses ». > > > par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond > > à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains > > d'entre eux contiennent un mot clé que je souhaite rechercher et si > > ce mot clé est trouvé je copie tout le bloc dans un autre fichier > > ainsi j'aurai un second fichier organisé de la même manière que le > > premier mais contenant uniquement les blocs avec le mot clé > > recherché. > > sed -e '1~5{N;N;N;N;/\/!d}' selection > > (GNU Sed --- avec des blocs de longueur /fixe/). > > > Merci pour votre aide > > de rien, Tahar comme je te l'indiquais l'autre jour il y a une liste dediee pour les shellscripts -> http://debianworld.org/shellscript-fr @+ -- . ''`. (\___/) E d i S T O J I C E V I C : :' : (='.'=) http://www.debianworld.org `. `~' (")_(") GPG: 0x1237B032 `- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: redirection d'un bloc de lignes
* Jacques L'helgoualc'h <[EMAIL PROTECTED]> [2008-04-10 14:50:29 +0200] wrote : > Tahar a écrit, jeudi 10 avril 2008, à 09:34 : > > Bonjour à tous, > > bonjour, > > > Désolé de vous ennuyer avec mes problèmes de script, mais je > > voudrais savoir s'il y a une commande ou un ensemble de commandes > > qui permettent de sortir un bloc de n lignes qui contiennent une > > expression recherché > > Sed ! > > Cf. info sed, section « addresses ». > > > par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond > > à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains > > d'entre eux contiennent un mot clé que je souhaite rechercher et si > > ce mot clé est trouvé je copie tout le bloc dans un autre fichier > > ainsi j'aurai un second fichier organisé de la même manière que le > > premier mais contenant uniquement les blocs avec le mot clé > > recherché. > > sed -e '1~5{N;N;N;N;/\/!d}' selection > > (GNU Sed --- avec des blocs de longueur /fixe/). > > > Merci pour votre aide > > de rien, Tahar comme je te l'indiquais l'autre jour il y a une liste dediee pour les shellscripts -> http://debianworld.org/shellscript-fr @+ -- . ''`. (\___/) E d i S T O J I C E V I C : :' : (='.'=) http://www.debianworld.org `. `~' (")_(") GPG: 0x1237B032 `- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: redirection d'un bloc de lignes
Tahar a écrit, jeudi 10 avril 2008, à 09:34 : > Bonjour à tous, bonjour, > Désolé de vous ennuyer avec mes problèmes de script, mais je > voudrais savoir s'il y a une commande ou un ensemble de commandes > qui permettent de sortir un bloc de n lignes qui contiennent une > expression recherché Sed ! Cf. info sed, section « addresses ». > par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond > à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains > d'entre eux contiennent un mot clé que je souhaite rechercher et si > ce mot clé est trouvé je copie tout le bloc dans un autre fichier > ainsi j'aurai un second fichier organisé de la même manière que le > premier mais contenant uniquement les blocs avec le mot clé > recherché. sed -e '1~5{N;N;N;N;/\/!d}' selection (GNU Sed --- avec des blocs de longueur /fixe/). > Merci pour votre aide de rien, -- Jacques L'helgoualc'h -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: redirection d'un bloc de lignes
On Thu, Apr 10, 2008 at 09:34:43AM +, Tahar wrote: > Bonjour à tous, > > Désolé de vous ennuyer avec mes problèmes de script Tu devrais vraiment poser ce genre question sur la liste shellscript-fr, qui est dédiée à ça. > par exemple j'ai un fichier de 1000 ligne et chaque bloc > correspond à 5 lignes donc j'ai 200 blocs, et dans ces 200 > blocs certains d'entre eux contiennent un mot clé que je > souhaite rechercher et si ce mot clé est trouvé je copie > tout le bloc dans un autre fichier ainsi j'aurai un second > fichier organisé de la même manière que le premier mais > contenant uniquement les blocs avec le mot clé recherché. Si j'ai bien compris: split -l 5 mon_fichier sortie grep -l "motcle" sortie* | xargs cat > resultat rm sortie* Y. -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re : redirection d'un bloc de lignes
Merci beaucoup, je ne pensais pas que c'était possible avec grep :) >> C'est vrai que ce n'est pas très spécifique à Debian, mais bon... Ce n'est pas spécifique à Debian certes, mais je cherchais une commande UNIX commune à toutes les distrib je pense. Désolé si ça vous ennuie qu'on pose des question qui concerne le monde GNU/Linux en général et pas seulement DEBIAN Et merci encore Le 10 avr. 08 à 11:34, Tahar a écrit : Bonjour à tous, Désolé de vous ennuyer avec mes problèmes de script, mais je voudrais savoir s'il y a une commande ou un ensemble de commandes qui permettent de sortir un bloc de n lignes qui contiennent une expression recherché C'est vrai que ce n'est pas très spécifique à Debian, mais bon... par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains d'entre eux contiennent un mot clé que je souhaite rechercher et si ce mot clé est trouvé je copie tout le bloc dans un autre fichier ainsi j'aurai un second fichier organisé de la même manière que le premier mais contenant uniquement les blocs avec le mot clé recherché. grep, options -A et -B, te permet d'afficher un nombre donné de lignes avant et après celle qui contient le mot clef. T.
Re : redirection d'un bloc de lignes
Salut, Sinon il y a la solution perl. Tu peux toujours nous donner un peu plus de précisions sur ce qui pourrais nous aider à identifier un bloc et ensuite si vous ne connaissez pas perl, je pourrais vous faire un script adéquat. Djibril - Message d'origine De : Thibaut Paumard <[EMAIL PROTECTED]> À : DEBIAN Envoyé le : Jeudi, 10 Avril 2008, 11h38mn 34s Objet : Re: redirection d'un bloc de lignes Le 10 avr. 08 à 11:34, Tahar a écrit : Bonjour à tous, Désolé de vous ennuyer avec mes problèmes de script, mais je voudrais savoir s'il y a une commande ou un ensemble de commandes qui permettent de sortir un bloc de n lignes qui contiennent une expression recherché C'est vrai que ce n'est pas très spécifique à Debian, mais bon... par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains d'entre eux contiennent un mot clé que je souhaite rechercher et si ce mot clé est trouvé je copie tout le bloc dans un autre fichier ainsi j'aurai un second fichier organisé de la même manière que le premier mais contenant uniquement les blocs avec le mot clé recherché. grep, options -A et -B, te permet d'afficher un nombre donné de lignes avant et après celle qui contient le mot clef. T. _ Envoyez avec Yahoo! Mail. Une boite mail plus intelligente http://mail.yahoo.fr
Re: redirection d'un bloc de lignes
Le 10 avr. 08 à 11:34, Tahar a écrit : Bonjour à tous, Désolé de vous ennuyer avec mes problèmes de script, mais je voudrais savoir s'il y a une commande ou un ensemble de commandes qui permettent de sortir un bloc de n lignes qui contiennent une expression recherché C'est vrai que ce n'est pas très spécifique à Debian, mais bon... par exemple j'ai un fichier de 1000 ligne et chaque bloc correspond à 5 lignes donc j'ai 200 blocs, et dans ces 200 blocs certains d'entre eux contiennent un mot clé que je souhaite rechercher et si ce mot clé est trouvé je copie tout le bloc dans un autre fichier ainsi j'aurai un second fichier organisé de la même manière que le premier mais contenant uniquement les blocs avec le mot clé recherché. grep, options -A et -B, te permet d'afficher un nombre donné de lignes avant et après celle qui contient le mot clef. T.