0
我的問題是我將stdout/stderr重定向到日誌文件,但logrotate來了,並隨輸出移動文件,然後去一個文件描述符沒有文件。是否有可能將stdout重定向到文件位置而不是文件描述符?
shell或系統級有什麼方法可以將輸出重定向到同一位置的新文件嗎?
我的問題是我將stdout/stderr重定向到日誌文件,但logrotate來了,並隨輸出移動文件,然後去一個文件描述符沒有文件。是否有可能將stdout重定向到文件位置而不是文件描述符?
shell或系統級有什麼方法可以將輸出重定向到同一位置的新文件嗎?
如果你不介意重新打開文件的每一行,而不是:
$ ... > logfile.txt 2>&1
做:
$ ... 2>&1 | while read line; do echo $line >> logfile.txt ; done
所有我在UNIX/O操作是通過文件句柄來完成。輪詢文件位置(在操作之前重複打開它)之後,您無法真正做到這一點。 – 2013-03-01 08:36:59