2012-10-08 85 views
1

我有一個腳本確保進程繼續運行,並且進程的輸出正被重定向到相應的process_name.out文件。在bash腳本中輸出重定向不起作用

神祕地(對我來說),輸出不會被重定向到文件,除非我關閉腳本,儘管錯誤確實如此。

這方面的任何線索都會很有幫助。

#!/bin/bash 

until $1 >> "/root/$1.out" 2>>"/root/$1.log" ; do 
    echo "Server $1 crashed with exit code $?. Respawning.." >> "/root/procees.log" 
    sleep 1 
done 
+0

你不痛苦的形式緩衝? – choroba

+0

嘗試'直到不緩衝$ 1 ...'祝你好運。 – shellter

+0

@shelter謝謝,它在安裝必要的軟件包後有效。 – w2lame

回答

1

在評論中提及了該解決方案爲@shelter是使用

until unbuffer $1 

代替