In article <jek5u0$ppv$
1...@speranza.aioe.org>,
azrazer <
dsf...@poupidoup.com> wrote:
>Le 11/01/2012 14:48, Marc Espie a écrit :
>> Mais lol quoi. Apprendre a utiliser perl.
>
>Si on veut faire de la ligne de commande : il y a des outils plus légers
>que perl pour faire ce genre de remplacements
>(sed, awk, grep, etc...)
On est quand meme dans fr.comp.lang.perl
>le seul avantage de perl, ici (à mon avis) est de l'utiliser si on veut
>vraiment faire un script plus complexe que simplement supprimer des lignes.
Le 2e avantage de perl ici, a mon avis, est la syntaxe particulierement
agreable et reguliere des expressions regulieres, chose que ni awk, ni sed,
ni grep ne partagent.
>> perl -ni.bak -e 'print unless m/^(0\>)?\=\=\=/ or m/^\-{5}/' fichier.txt
>"mais lol quoi", pourquoi echappez-vous les signes "=" ... et "-" ??
>et si la repetition ----- vous fait bondir, pourquoi pas celle \=\=\= ?
Parce que ca fait partie des bonnes pratiques et de la regularite de perl:
on peut mettre des \ devant tous les caracteres susceptibles d'etre speciaux,
a comparer avec les regles un peu biscornues, de par exemple, grep et des
parentheses.
>=> il est plus simple pour expliquer aux gens qui ne sont pas a l'aise
>avec les regexp des expressions simples que des expressions
>"factorisées", mais bon cela semble vous échapper...
Boarf, c'etait un exemple. On peut faire comme ca, ca titille pour apprendre
des trucs en plus a mon avis.
>> (sinon, sed -i n'est pas standard, ca ne marchera qu'avec gnu-sed).
>oui désolé, utiliser
>sed -e '/^O>===\|^===\|^------/d' VOTREFICHIER.txt > VOTREFICHIEROUT.txt
>
>Il y a moults façons de faire, pas de quoi "loler" outre mesure...
C'etait juste la longueur comparee du script perl avec le sed, qui denote
clairement plus d'habitude de sed, alors qu'on peut faire aussi long avec perl.
Apres si tu te vexes... desole ;-)