X-Recipient: archive-cygwin AT delorie DOT com X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 148B03959E5D Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=cs.umass.edu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=moss AT cs DOT umass DOT edu Subject: Re: Tee and file redirections are very slow to write anything. To: ASSI , cygwin AT cygwin DOT com References: <87eeh5b39n DOT fsf AT Otto DOT invalid> From: Eliot Moss Message-ID: <49e01de1-f7de-5d60-2996-3c9afb834396@cs.umass.edu> Date: Wed, 24 Feb 2021 16:58:24 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.12.1 MIME-Version: 1.0 In-Reply-To: <87eeh5b39n.fsf@Otto.invalid> Content-Language: en-US X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, NICE_REPLY_A, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: moss AT cs DOT umass DOT edu Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: cygwin-bounces AT cygwin DOT com Sender: "Cygwin" On 2/24/2021 3:48 PM, ASSI wrote: > Hamish McIntyre-Bhatty via Cygwin writes: >> I found recently when trying to save output from a script for later >> inspection that "tee" and file redirections seem to have massive >> delays when run in Cygwin - usually nothing is written to file or >> stdout until after the command has finished - not very helpful. > > You will want to switch from fully buffered to line-buffered or even > unbuffered output. And this does not have to do with Cygwin. The same happens on Linux. The default is that terminal I/O is unbuffered while other stream are buffered. Pipes come under "other streams". One can make programmatic changes to get around this, but most programs won't override the default behavior on their own ... Best -- Eliot Moss -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple