harold50 Posted September 3, 2008 Share Posted September 3, 2008 Bonjour j'ai un fichier text dans lequel je dois supprimer plusieurs lignes. mais il y a une ligne ou je ne dois supprimer qu'une partie de la ligne comment je fais?? pour supprimer les lignes j'ai pensé à sed -i".bak" 'numero_de_la_ligne' nom_du_fichier.txt mais le probleme c'est que je devrais taper cette commande pour chaque ligne à supprimer donc si vous avez une methode plus simple merci de me l'a donner merci Link to comment Share on other sites More sharing options...
theocrite Posted September 3, 2008 Share Posted September 3, 2008 En perl : perl -ne 'print unless grep /$./, (X, X, X, X) en remplaçant X par tes lignes à supprimer. Link to comment Share on other sites More sharing options...
harold50 Posted September 3, 2008 Author Share Posted September 3, 2008 euh je prefere une commande shell Link to comment Share on other sites More sharing options...
theocrite Posted September 3, 2008 Share Posted September 3, 2008 Parce que ça n'en est pas une ? Link to comment Share on other sites More sharing options...
harold50 Posted September 3, 2008 Author Share Posted September 3, 2008 desolé mais je confondais avec le langage perl utilisé pour le web (comme php) mais faut dire que je ne m'y connais pas en perl et quand je regarde ta commande je ne sais pas où spécifier le fichier à traiter. Link to comment Share on other sites More sharing options...
theocrite Posted September 3, 2008 Share Posted September 3, 2008 À la fin, comme avec sed perl -ne 'print unless grep /$./, (X, X, X, X)' FICHIER Link to comment Share on other sites More sharing options...
harold50 Posted September 4, 2008 Author Share Posted September 4, 2008 À la fin, comme avec sed perl -ne 'print unless grep /$./, (X, X, X, X)' FICHIER ça marche mais juste pour les numeros de ligne à un chiffre. par exemple je ne peux pas supprimer la ligne 13 avec mais j'ai trouver une solution. et ce je ne veux pas supprimer toute la ligne mais juste une partie de la ligne? Link to comment Share on other sites More sharing options...
theocrite Posted September 4, 2008 Share Posted September 4, 2008 Si si, ça fonctionne avec les nombres à deux chiffres ou plus. Pour supprimer une partie de la ligne, il faut lui dire quoi aussi. Pour ça il faut utiliser s/// ou l'utilitaire cut si tu as un caractère délimiteur (ou awk si c'est un espace). Link to comment Share on other sites More sharing options...
harold50 Posted September 4, 2008 Author Share Posted September 4, 2008 voila la ligne 1> 2> 3> 4> 5> SMSMO_TIMES SMSMO_SUCCESS_TIMES et je veux supprimer 1> 2> 3> 4> 5> Link to comment Share on other sites More sharing options...
theocrite Posted September 4, 2008 Share Posted September 4, 2008 s/1> 2> 3> 4> 5>// Mais vraiment tu devrais te documenter un peu au lieu de simplement recopier des commandes qu'on te donne. Ça te jouera des tours un jour. Link to comment Share on other sites More sharing options...
harold50 Posted September 4, 2008 Author Share Posted September 4, 2008 t'inquiete c'est parce que j'en ai besoin urgement. sinon je cherche par moi meme et la au moins j'ai appris quelque chose: l'existence de la commande perl. encore merci Link to comment Share on other sites More sharing options...
theocrite Posted September 4, 2008 Share Posted September 4, 2008 C'est même un interpréteur de langage. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.