From: Henri Bourbon <useperl@fastmail.fm> To: community@altlinux.ru Subject: [Comm] ðÏÞÅÍÕ ÂÕÆÅÒÉÚÁÃÉÑ ÍÅÎÑÅÔ ÐÏÒÑÄÏË ×Ù×ÏÄÉÍÙÈ × ÆÁÊÌ ÓÔÒÏË? Date: Fri, 25 Oct 2002 21:20:14 +0400 Message-ID: <18541747015.20021025212014@fastmail.fm> (raw) In-Reply-To: <20021025194035.401ec5c0.vsu@altlinux.ru> On 25 Oct 2002 19:40, Sergey Vlasov wrote: > xxxxxxxx 2>&1 | tee file > Со многими программами в этом случае возникает проблема с буферизацией > вывода - когда программа обнаруживает, что stdout направлен не на > терминал, вывод начинает идти с использованием буфера, поэтому выходные > строки могут появляться кучами с паузой между ними. Да, в свое время меня очень обескуражил этот эффект. Теперь с этим я разобрался, непонятно же другое: почему буферизация может поменять *порядок* выводимых в файл строк. Поясняю: $ perl -we 'print "1-STDOUT\n"; warn "2-STDERR\n";' 1-STDOUT 2-STDERR Что может быть проще? Сначала печатаем строку 1 в один файл, затем строку 2 в другой. Т. к. оба файла оказываются одним и тем же (терминалом, или, грубо говоря, просто экраном), то сначала печатается строка 1, затем -- строка 2. Как же может быть иначе? Ан нет, подключаем перенаправления, получаем: $ perl -we 'print "1-STDOUT\n"; warn "2-STDERR\n";' >out 2>&1 $ cat out 2-STDERR 1-STDOUT Странно! Почему так?.. ладно, выключаем буферизацию: $ perl -we '$| = 1; print "1-STDOUT\n"; warn "2-STDERR\n";' >out 2>&1 $ cat out 1-STDOUT 2-STDERR Теперь все нормально... Каким же волшебным образом буферизация влияет на то, в каком порядке стоки попадут в файл? -- HB
next prev parent reply other threads:[~2002-10-25 17:20 UTC|newest] Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top 2002-10-25 12:58 [Comm] перенаправление вывода в лог Sinom 2002-10-25 13:07 ` Sergey Vlasov 2002-10-25 13:15 ` Слава Гарелин 2002-10-25 13:34 ` Андрей Булава 2002-10-25 15:09 ` Sinom 2002-10-25 15:31 ` Re[2]: [Comm] ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ×Ù×ÏÄÁ × ÌÏÇ ASA 2002-10-25 15:40 ` Re[3]: " ASA 2002-10-25 16:05 ` Re[2]: [Comm] перенаправление вывода в лог Sinom 2002-10-25 16:26 ` Re[4]: [Comm] ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ×Ù×ÏÄÁ × ÌÏÇ ASA 2002-10-25 16:57 ` Re[4]: [Comm] перенаправление вывода в лог Sinom 2002-10-25 17:37 ` Re[6]: [Comm] ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ×Ù×ÏÄÁ × ÌÏÇ ASA 2002-10-25 19:50 ` [Comm] перенаправление вывода в лог Anton Kovalenko 2002-10-26 10:20 ` Re[2]: [Comm] ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ×Ù×ÏÄÁ × ÌÏÇ ASA 2002-10-26 11:49 ` [Comm] перенаправление вывода в лог Sinom 2002-10-26 23:11 ` Anton Kovalenko 2002-10-28 7:16 ` [Comm] Re: РЕТЕОБРТБЧМЕОЙЕ ЧЩЧПДБ Ч МПЗ Vitaly Ostanin 2002-10-28 8:23 ` [Comm] Re: [JT] Re: òåôåïâòôâþíåïêå þýþðäâ þ íðú ASA 2002-10-28 8:41 ` [Comm] Re: тефепвтфвюнепке юэюрдв ю нръ Vitaly Ostanin 2002-10-28 8:54 ` [Comm] Re: [JT] Так лучше? ASA 2002-10-28 9:14 ` Maxim Tyurin 2002-10-28 9:44 ` W.Kondratev 2002-10-28 10:22 ` Vitaly Ostanin 2002-10-28 12:06 ` sam 2002-10-28 13:28 ` Ruslan N. Balkin 2002-10-28 14:05 ` [Comm] Re[2]: " ASA 2002-10-28 14:18 ` Dmitry E. Oboukhov 2002-10-28 14:30 ` [Comm] Re[2]: " ASA 2002-10-28 14:42 ` [Comm] " Dmitry E. Oboukhov 2002-10-28 14:53 ` [Comm] " ASA 2002-10-28 15:23 ` [Comm] " Dmitry E. Oboukhov 2002-10-28 15:54 ` [Comm] " ASA 2002-10-28 16:07 ` [Comm] " Dmitry E. Oboukhov 2002-10-28 16:44 ` Sergey Vlasov 2002-10-28 16:53 ` [Comm] " ASA 2002-10-28 17:41 ` [Comm] " Sergey Vlasov 2002-10-28 17:57 ` [Comm] Re[2]: " ASA 2002-10-28 15:02 ` [Comm] Re[2]: [Comm] Re[2]: [Comm] " Ruslan N. Balkin 2002-10-28 18:04 ` [Comm] MIME в звголовке - " Valentin Nechayev 2002-10-28 14:56 ` Sergey Vlasov 2002-10-28 15:25 ` [Comm] Re[2]: " ASA 2002-10-29 7:55 ` Vitaly Ostanin 2002-10-29 8:31 ` [Comm] " ASA 2002-10-29 9:00 ` Vitaly Ostanin 2002-10-28 14:13 ` Vitaly Ostanin 2002-10-28 9:45 ` [Comm] Re: тефепвтфвюнепке юэюрдв ю нръ Andrey Golovin 2002-10-28 8:59 ` [Comm] Re[2]: [Comm] Заголовок выпрямил ASA 2002-10-28 11:12 ` Andrey Golovin 2002-10-28 9:39 ` [Comm] Re: [JT] Re: РЕТЕОБРТБЧМЕОЙЕ ЧЩЧПДБ Ч МПЗ Anton Kovalenko 2002-10-28 10:19 ` [Comm] Re[2]: " ASA 2002-10-28 10:25 ` Vitaly Ostanin 2002-10-28 17:56 ` [Comm] MIME в заголовках - " Valentin Nechayev 2002-10-25 15:34 ` [Comm] перенаправление вывода в лог Sergey Vlasov 2002-10-25 15:24 ` Sinom 2002-10-25 15:40 ` Sergey Vlasov 2002-10-25 17:20 ` Henri Bourbon [this message] 2002-10-25 17:42 ` [Comm] ðÏÞÅÍÕ ÂÕÆÅÒÉÚÁÃÉÑ ÍÅÎÑÅÔ ÐÏÒÑÄÏË ×Ù×ÏÄÉÍÙÈ × ÆÁÊÌ ÓÔÒÏË? ASA 2002-10-27 10:54 ` [Comm] Почему буферизация меняет порядок выводимых в файл строк? Valentin Nechayev 2002-10-27 10:53 ` Valentin Nechayev 2002-10-28 2:22 ` [comm] ðÏÞÅÍÕ ÂÕÆÅÒÉÚÁÃÉÑ ÍÅÎÑÅÔ ÐÏÒÑÄÏË ×Ù×ÏÄÉÍÙÈ × ÆÁÊÌ ÓÔÒÏË? Henri Bourbon 2002-10-25 13:25 ` [Comm] перенаправление вывода в лог Andy Gorev
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=18541747015.20021025212014@fastmail.fm \ --to=useperl@fastmail.fm \ --cc=community@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git