如何使用>,即時輸入檔案? - Linux

Table of Contents

我寫了一個小c shell script,內容如下:

./test > test.log

類似這樣的指令,">" 似乎都是累積了一定份量的內容後才會丟到之後的log裡,

請問有沒有辦法讓它可以有新訊息就直接丟到log裡呢?

--

All Comments

Mason avatarMason2014-05-17
stdbuf -i0 -o0 -e0 ./test 試試?
Agatha avatarAgatha2014-05-18
需要做log的程式,最好用自己開log檔的方式而不要用輸出轉
Isla avatarIsla2014-05-21
向,由程式自行控制何時flush output. 若一定要用 > ,那就
是由程式自行flush stdout,反正都是由程式下手就對了
Mia avatarMia2014-05-22
定時去做之類的?寫在cron裏面是否可行?
John avatarJohn2014-05-26
和定時與否無關,主因是OS和c library都有輸出入緩衝,就像
Frederica avatarFrederica2014-05-26
原po說的要積滿才會實際寫入(cache或HD),主動呼叫flush可
以強迫實際寫入(cache或HD)