On Fri, 22 Sep 2006 17:39:17 +0200
"Serge Noiraud" <[EMAIL PROTECTED]> wrote:
> Bonjour,
>
> vendredi 22 Septembre 2006 15:40, jipe wrote/a écrit :
> > On Fri, 22 Sep 2006 11:08:32 +0200
> > "Serge Noiraud" <[EMAIL PROTECTED]> wrote:
> >
> > > Bonjour,
> > >
> > > autre solution avec sed :
> > > sed '1,/AAAAA/d' | sed '/BBBBB/,$d'
> >
> > il manque l'extraction de champ, tu affiches des lignes complètes
> Tu peux expliciter s'il te plait.
> Moi j'obtiens strictement le même résultat avec ces deux commandes.
> Il y a certainement un cas que je n'ai pas testé.
> >
> >
>
> --
> Serge Noiraud
>
ok je te donnes un exemple:
[EMAIL PROTECTED] test]$ cat testfile
01 02 03 04 AAAA
05 06 07 08 BBBB
09 0A 0B 0C CCCC
0D 0E 0F 10 DDDD
11 12 13 14 EEEE
15 16 17 18 FFFF
19 1A 1B 1C GGGG
1D 1E 1F 20 HHHH
21 22 23 24 IIII
25 26 27 28 JJJJ
29 2A 2B 2C KKKK
2D 2E 2F 30 LLLL
31 32 33 34 MMMM
35 36 37 38 NNNN
39 3A 3B 3C OOOO
3D 3E 3F 40 PPPP
dans ce fichier je veux afficher le 2ème champ de chaque ligne entre la ligne
contenant DDDD et celle contenant KKKK, ces 2 lignes étant exclues.
ta commande:
[EMAIL PROTECTED] test]$ sed '1,/DDDD/d' testfile | sed '/KKKK/,$d'
11 12 13 14 EEEE
15 16 17 18 FFFF
19 1A 1B 1C GGGG
1D 1E 1F 20 HHHH
21 22 23 24 IIII
25 26 27 28 JJJJ
tu affiches des lignes complètes
avec awk:
[EMAIL PROTECTED] test]$ awk '/DDDD/,/KKKK/{if (!/DDDD/ && !/KKKK/) print $2}'
testfile
12
16
1A
1E
22
26
seul le 2ème champ de ces lignes est affiché.
bye
jipe
____________________________________________________
Want to buy your Pack or Services from Mandriva?
Go to http://store.mandriva.com
Join the Club : http://www.mandrivaclub.com
____________________________________________________