Rechercher : dans
Par :

[Shell-script] Extraire partie de texte

Dernière réponse le 22 jun 2007 à 16:45:37 Phil, le 2 mai 2007 à 11:13:09 
 Signaler ce message aux modérateurs

Bonjour à tous.

J'essaye de faire un script qui me permettrait d'extraire une partie d'un texte.
Cette Partie est récurrente dans le texte mais elle est toujours situé entre 2 lignes :

EVENT
 
la partie que je veux

EVENT


Comment faire pour réaliser cette action ?

Merçi d'avance.
Configuration: Windows XP
Firefox 2.0.0.3

Meilleures réponses pour « [Shell script] Extraire partie de texte » dans :
[Logiciels] Extraire toutes les images d'un PDF VoirVoici comment extraire toutes les images d'un fichier PDF. Avantage de cette méthode sur http://www.commentcamarche.net/faq/sujet-1036-: Les images sont extraites tel quel, sans perte de qualité (Par exemple, les JPEG sont extraits tel quel du...
Exécuter un script shell VoirExécution d'un script Pour pouvoir exécuter un script ou un programme en ligne de commande il y a plusieurs possibilités : 1. Le chemin absolu 2. Le chemin relatif 3. Modifier la variable PATH Note: Le Sha...
Guide d'utilisation du Shell pour débutant VoirSHELL BASH - GUIDE D'UTILISATION - Niveau Débutant Introduction Appel aux membres CCM II. C'est quoi le shell ? III. Comment accéder à la ligne de commande IV. Les consoles virtuelles Exemple : Accéder à la console 3 depuis l'interface...
Télécharger Miraplacid Text Driver VoirVoulez-vous avoir les textes de votre document ? Miraplacid Text Driver peut les extraire pour vous facilement. Miraplacid Text Driver est un programme permettant de d’extraire les textes de n’importe quel document imprimable. En fait,...
Javascript - Introduction au langage Javascript VoirQu'est-ce que le Javascript? Le Javascript est un langage de script incorporé dans un document HTML. Historiquement il s'agit même du premier langage de script pour le Web. Ce langage est un langage de programmation qui permet d'apporter des...

1

jipicy, le 2 mai 2007 à 11:40:10

Salut,

sed -n '/EVENT/,/EVENT/{/EVENT/b;/EVENT/b; p;}' fichier
Voir aussi : sed substitution

;-)) Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

2

Phil, le 2 mai 2007 à 16:28:45

Ok merçi beaucoup :)

Répondre à Phil

3

Poulpoul, le 22 jun 2007 à 15:26:18

Coucouille tout le monde,

juste une question bête, en fait je ne comprends pas le "/b" dans la syntaxe qu'a donné jipicy
bien que j'ai regardé le Voir aussi : sed substitution

@+

Répondre à Poulpoul

4

jipicy, le 22 jun 2007 à 15:45:20

En fait la commande "b" pour "branch" (et non pas /b, le slash étant le délimiteur pour le motif) sert comme son nom l'indique à se brancher sur un étiquette, mais ici il n'y a point d'étiquette et de ce fait permet d'exclure les lignes contenant les "motifs" de l'affichage final.

$ cat plop

blablabla
AAA
La phrase qu'on veut afficher
BBB
bliblibli

$ sed -n '/AAA/,/BBB/p' plop  

AAA
La phrase qu'on veut afficher
BBB

$ sed -n '/AAA/,/BBB/ {/AAA/b;/BBB/b;p}' plop

La phrase qu'on veut afficher

$
;-)) Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

5

Poulpoul, le 22 jun 2007 à 16:41:18

Merci pour l'explication
cependant j'obtiens ce message quand je teste ici => sed : 0602-417 L'étiquette /AAA/,/BBB/ {/AAA/b;/BBB/b;p} comporte plus de huit caractères

je ne suis pas sous linux mais sous AIX/ ksh ....

++

Répondre à Poulpoul

6

 jipicy, le 22 jun 2007 à 16:45:37

Peut être la version de "sed" alors... d'ailleurs...

http://sed.sourceforge.net/sedfaq6.html#s6.6

6.6.5. Limits on length of label names

      GNU sed:        no limit
      ssed:           no limit
      HHsed v1.5:     no limit
      sed v1.6:       [pending]
      BSD sed:        8 characters

Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy