Supprimer un paragraphe contenant un mot
Résolu/Fermé
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
-
30 janv. 2013 à 14:14
Prezf Messages postés 8 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013 - 30 janv. 2013 à 19:04
Prezf Messages postés 8 Date d'inscription mercredi 30 janvier 2013 Statut Membre Dernière intervention 30 janvier 2013 - 30 janv. 2013 à 19:04
A voir également:
- Supprimer un paragraphe contenant un mot
- Impossible de supprimer un fichier - Guide
- Supprimer une page word - Guide
- Supprimer mot de passe windows 10 - Guide
- Mettre un mot de passe sur un dossier - Guide
- Supprimer compte instagram - Guide
5 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
30 janv. 2013 à 14:48
30 janv. 2013 à 14:48
Salut,
sed '/DEBUT/{:z;N;/FIN/!bz;/InS4E/{s/\([^\n]*\n\).*\n\(.*\)/\1\2/};}'
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 17:13
30 janv. 2013 à 17:13
Merci pour ta réponse mais il m'affiche une erreur :
sed: 1: "/DEBUT/{:z;N;/FIN/!bz;/ ...": unexpected EOF (pending }'s)
sed: 1: "/DEBUT/{:z;N;/FIN/!bz;/ ...": unexpected EOF (pending }'s)
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
30 janv. 2013 à 17:18
30 janv. 2013 à 17:18
Quel système ? Quelle version de sed ?
Essaye en rajoutant un point virgule avant l'avant dernière accolade :
Ou en mettant la syntaxe dans un fichier comme suit :
Et en l'appelant comma ça :
Essaye en rajoutant un point virgule avant l'avant dernière accolade :
sed '/DEBUT/{:z;N;/FIN/!bz;/InS4E/{s/\([^\n]*\n\).*\n\(.*\)/\1\2/;};}'
Ou en mettant la syntaxe dans un fichier comme suit :
$ cat script.sed /DEBUT/ { :z N /FIN/ !b z /InS4E/ { s/\([^\n]*\n\).*\n\(.*\)/\1\2/ } }
Et en l'appelant comma ça :
sed -f script.sed fichier
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 17:25
30 janv. 2013 à 17:25
En faisan l'appel avec le script.sed sa marche super ! Merci beaucoup !
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 17:33
30 janv. 2013 à 17:33
J'ai peut-être parlé un peu vite, sa me supprime juste la dernière ligne
Je suis sur MacBook et je n'arrive pas a connaitre la version de sed
Je suis sur MacBook et je n'arrive pas a connaitre la version de sed
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
30 janv. 2013 à 17:43
30 janv. 2013 à 17:43
Chez moi (Gnu/Linux) :
Voilà ce que ça donne :
$ sed --version GNU sed version 4.2.1
Voilà ce que ça donne :
$ cat plop -DEBUT0- BEGIN:VEVENT UID: ... SUMMARY:CM - InTsi\, InS4D\, LOCATION: ... END:VEVENT -FIN0- -DEBUT1- BEGIN:VEVENT UID: ... SUMMARY:CM - InTsi\, InS4D\, InS4E LOCATION: ... END:VEVENT -FIN1- -DEBUT2- BEGIN:VEVENT UID: ... SUMMARY:CM - InTsi\, InS4D\, LOCATION: ... END:VEVENT -FIN2- $ sed -f script.sed plop -DEBUT0- BEGIN:VEVENT UID: ... SUMMARY:CM - InTsi\, InS4D\, LOCATION: ... END:VEVENT -FIN0- -DEBUT1- -FIN1- -DEBUT2- BEGIN:VEVENT UID: ... SUMMARY:CM - InTsi\, InS4D\, LOCATION: ... END:VEVENT -FIN2- $
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 17:45
30 janv. 2013 à 17:45
J'ai testé cette option mais le problème est la :
sed --version
sed: illegal option -- -
usage: sed script [-Ealn] [-i extension] [file ...]
sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
et effectivement c'est bien le resultat que je cherche !
Je vais essayer de mettre a jour sed
sed --version
sed: illegal option -- -
usage: sed script [-Ealn] [-i extension] [file ...]
sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
et effectivement c'est bien le resultat que je cherche !
Je vais essayer de mettre a jour sed
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 17:50
30 janv. 2013 à 17:50
C'est bon sa marche ! J'ai mis a jour sed et executé le script et sa marche super bien ! Encore un grand merci !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 18:53
30 janv. 2013 à 18:53
Et dit moi, tu aurai une idée de comment faire si je voulais faire la même chose mais a condition qu'il y ai deux mots présents dans l'intervalle ?
Merci d'avance
Merci d'avance
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 422
30 janv. 2013 à 18:57
30 janv. 2013 à 18:57
A la place de "/InS4E/" tu mets :
En respectant l'ordre d'apparition des motifs 1 et 2.
/motif1.*motif2/
En respectant l'ordre d'apparition des motifs 1 et 2.
Prezf
Messages postés
8
Date d'inscription
mercredi 30 janvier 2013
Statut
Membre
Dernière intervention
30 janvier 2013
30 janv. 2013 à 19:04
30 janv. 2013 à 19:04
Super merci !