Portál AbcLinuxu, 6. května 2025 16:06

Dotaz: bzless ve velkem souboru od retezce k retezci

13.3.2015 16:14 radeon
bzless ve velkem souboru od retezce k retezci
Přečteno: 173×
Odpovědět | Admin
Ahoj, mam takovy dotaz, jak je nelepe a nejsetrnejsi vzhledem na systemove prostredky zapsat do souboru vsechno mezi string1 a string2? Diky
(bz)sed -n '/string1/,/string2/p' velkysoubor.bz2 > soubor 
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

13.3.2015 16:24 radeon
Rozbalit Rozbalit vše Re: bzless ve velkem souboru od retezce k retezci
Odpovědět | | Sbalit | Link | Blokovat | Admin
jeste jednou, tohle zkousim
bzless ./velkysoubor.bz2 | sed -n '/string1/,/string2/p' > soubor
13.3.2015 16:55 NN
Rozbalit Rozbalit vše Re: bzless ve velkem souboru od retezce k retezci
Odpovědět | | Sbalit | Link | Blokovat | Admin
bzgrep by mohl byt rychlejsi.. 50c
13.3.2015 22:45 mhepp
Rozbalit Rozbalit vše Re: bzless ve velkem souboru od retezce k retezci
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus byt specifictejsi. Muze byt vic vyskytu string1 a 2? Muzou byt bloky vnorene? Nebo chces vypsat vse mezi prvnim vyskytem string1 a poslednim vyskytem string2?

Spis nez na hrani si s *grep nebo less, ktere je na neco jineho, je to uloha pro perl nebo awk:

bzcat velka_data | awk 'BEGIN{ blok=0;} /string1/{blok=1;}; /string2/{blok=0;}; { if (blok){print $0}}' > soubor.txt

Vypise vse mezi prvnim (pripadne po string2) string1 a prvnim nasledujicim string2. Bloku muze byt vic, kazdy vypise. Pametova narocnost... Zdroj je proud dat, takze minimalni. Procesorova je uz vetsi kvuli dekompresi zdroje.

Psano z mobilu, tak se omlouvam za pripadne chyby.
15.3.2015 22:12 Jindřich Makovička | skóre: 17
Rozbalit Rozbalit vše Re: bzless ve velkem souboru od retezce k retezci
Odpovědět | | Sbalit | Link | Blokovat | Admin
BZ má velmi pomalou dekompresi. Pokud to můžete ovlivnit, radši použijte XZ s mírně pomalejší kompresí, mnohem rychlejší dekompresí a lepším kompresním poměrem.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.