[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Grepownie od - do?



On Thu, Nov 29, 2007 at 07:44:44PM +0100, Jarek Buczyński wrote:
> Mam takie pytanie czy grepem można załatwić taka sprawę ze mając jakiś
> pliki, załóżmy ze linie zaczynaj sie data i godziny (200711100900) lub czymś
> podobnym. Czy można aby grep wybrał to wszystko co znajduje sie pomiędzy
> tymi dwoma zadanymi ciągami i zapisał pod inna nazwa.

od biedy tak:

egrep -A 999999 '^timestamp1' < plik | egrep -B 999999 '^timestamp2' > inna_nazwa

> Jak można takie coś osiągnąć?

Ale powyższe może być bardzo pamięciożerne. Lepiej tak:

perl -n -e '$yes = 1 if /^timestamp1/; print if $yes; exit if $yes and /^timestamp2/' < plik > inna_nazwa

Marcin
PS: grep nie nie zapisuje niczego "pod inną nazwą". To shell tworzy
docelowy plik i przekierowuje do niego standardowe wyjście grepa.
-- 
Marcin Owsiany <porridge@debian.org>             http://marcin.owsiany.pl/
GnuPG: 1024D/60F41216  FE67 DA2D 0ACA FC5E 3F75  D6F6 3A0D 8AA0 60F4 1216



Reply to: