presmerovani std a err do tehoz souboru: synchronizace, buffering?
Bohumil Chalupa
bochal na apollo.karlov.mff.cuni.cz
Pondělí Srpen 18 17:10:05 CEST 1997
Dobre odpoledne,
vsichni mne presvedcovali, ze neni problem presmerovat standardni vystup
i standardni chybovy vystup do tehoz souboru. V principu asi ne, ale chova
se to jinak, nez bych chtel.
Mam napr. program:
nohup ./program -param1 -param2 >> soubor.log 2>&1 &
(mimochodem, je tento zapis ekvivalentni zapisu
nohup ./program -param1 -param2 >> soubor.log 2>>soubor.log &
nebo neni? Chova se to podle meho stejne.)
kteryzto program vypisuje postupne tyto hlasky, stridave na std a err,
oznacim o: a e:
o: neco_delam
e: nedari_se
o: neco_delam
e: nedari_se
o: neco_delam
e: nedari_se
o: neco_delam
e: nedari_se
o: neco_delam
e: nedari_se
etc. To ovsem jen v tom pripade, kdyz ho spustim v popredi a vystup
necham na terminal. Soubor.log podle prikladu vyse vypada jinak:
e: nedari_se
e: nedari_se
e: nedari_se
e: nedari_se
e: nedari_se
o: neco_delam
o: neco_delam
o: neco_delam
o: neco_delam
o: neco_delam
Coz, uznat, se mi dvakrat nelibi. Totiz ani jednou ne. :-(
Ve skutecnosti jsou tech rozsynchronizovanych radek spis
stovky nez desitky.
Poradi, prosim, nekdo, co s tim? Nebo mi vysvetlete, proc
to tak je, jestli to jinak nejde. :-))
Slackware 3.2, bash
Zdravi
Bohumil Chalupa
Další informace o konferenci Linux