Muhtemelen bir tamponlama sorunudur. Borular kullanırken otomatik tamponlamayı devre dışı bırakmak için bu SO yayına bakın . unbufferKomutu şuradan kullanabilirsiniz expect:
$ unbuffer tail -f log.txt | egrep 'WARN|ERROR' | tee filtered_output.txt
Düzenleme : Daha uzun bir boru hattınız olduğundan, muhtemelen her komutun çözülmesini kaldırmanız gerekir (sonuncusu hariç):
$ unbuffer tail -f log.txt | unbuffer egrep 'WARN|ERROR' | tee filtered_output.txt
Düzenleme 2 : unbufferden Cygwin mevcuttur expect(örn kaynak paketinin bekliyoruz-20030128-1-src.tar.bz2 , bulunan expect/examplesklasöre), ancak çok kısa bir senaryo. Eğer varsa expectzaten yüklü paketi, basitçe adında bir komut dosyası içine koymak unbufferiçin de /usr/local/bindizindeki:
#!/usr/bin/expect --
# Description: unbuffer stdout of a program
# Author: Don Libes, NIST
eval spawn -noecho $argv
set timeout -1
expect
Debian'da, unbufferkomut expect-devpakette verilir ve olarak yüklenir expect_unbuffer.