OT [Was Re: head obracene]

Leos Bitto bitto na atrey.karlin.mff.cuni.cz
Úterý Leden 4 13:34:56 CET 2000


Ahoj Zbynku,

ja se taky nekdy neudrzim a vlezu doprostred threadu aniz bych si ho cely
precetl, takze si z toho nic nedelej. ;-)

Zbynek Vyskovsky (rat na atrey.karlin.mff.cuni.cz) wrote:
: On Tue, Jan 04, 2000 at 10:20:36AM +0000, Leos Bitto wrote:
: 
: > IMHO wc 1x a tail 2x za predpokladu ze mu nedovolime alokovat spoustu pameti.
:  Proc spoustu? Staci mu pamet na poslednich x radku, ty predtim muze okamzite
: zapominat.

No prave. Cely tenhle thread je o tom ze z potencialne velice velkeho souboru
chceme useknout par prvnich radku. Takze "Staci mu pamet na poslednich x radku"
je dost neskromny pozadavek. To uz bych si na miste toho tailu radsi pamatoval
jen pozice tech koncu radku, dvakrat to cetl z disku a spolehal na diskovou
cache co mi poskytuje operacni system.

: A krome toho, v pripade, ze vstup pujde z pipy/soketu/..., tak mu
: stejne nic jineho zbyvat nebude

Ale fuj! To jsem si ani neodvazoval domyslet ze by se nekdo ten tail opovazil
krmit ze standardniho vstupu.

: (pravda je, ze v takovem pripade by kombinace wc/tail nefungovala vubec).

To je vlastne pravda. A ted jsem si taky uvedomil ze kdyz se to tak neudela
tak navic bude hrozit ze ten soubor nekdo mezitim zmeni, takze wc napocita
neco jineho nez bude tail zpracovavat.

Od zacatku rikam ze to reseni nestoji za nic a ted nachazime jen dalsi
a dalsi argumenty ktere to podporuji.

: > Pokud tvrdite ze ten tail lze rozumne naprogramovat jednopruchodove,
: > napiste algoritmus. Jine argumenty uz neberu.
:  Jednopruchodove az na poslednich n radku (pokud jednopruchodovosti nazyvame
: oba to same):

Neee, prosim ja rikal algoritmus, ne hned straseni perlem! Nu coz, i to
jsem ale ochoten dekodovat. ;-)

: push(@a, $_) while ($lines-- && <>);
: while (<>) {
:   push(@a, $_); shift @a;
: }

Toto je prvni pruchod.

: print("$_\n") while (defined shift @a);

A toto druhy.


Leos Bitto


Další informace o konferenci Linux