Bonjour,
Franck Tournant a écrit :
> On 15 sept. 2009, at 21:50, Patrick Proniewski wrote:
>>
>> Si ton toto et ton titi sont uniques, tu peux utiliser awk :
>>
>> awk '/toto/,/titi/' fichier
>
> Super sympa la réponse malheureusement si mon toto est unique,
> mon titi ne l'est pas !
>
Je ne suis pas assez pointu avec awk, mais il me semble que sed s'arrête
à la première occurence si on procède par exemple de cette façon :
sed -ne "/toto/,/titi/p" fichier
La syntaxe est très similaire, d'ailleurs ; mis à part l'option "-n"
pour ne pas afficher les lignes, puis "p" pour afficher ce qui "matche"
entre les 2 expressions régulières.
Peut-être que j'ai mal compris et que c'est l'inverse que tu veux faire,
c'est à dire extraire du "toto" (qui est unique) au *dernier* "titi"
(qui ne l'est pas) ; dans ce cas je vois bien un astuce, mais j'ai un
peu honte... bon je me lance ;-)
tac fichier | sed -ne "/titi/,/toto/p" | tac
Evidemment sur des fichiers volumineux ça n'est peut-être pas la
solution la plus optimale...
Laurent
_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr