3
我運行一個程序,每秒產生一行輸出。每次生成一個新行時,我都需要將它保存(並且只保存它)到一個特定的文本文件中。當生成新行時,必須用新行覆蓋該文件。如何定期保存程序輸出的最後一行?
我認爲它必須是非常簡單的解決方案,但是我無法用我對shell命令的瞭解。
謝謝!
我運行一個程序,每秒產生一行輸出。每次生成一個新行時,我都需要將它保存(並且只保存它)到一個特定的文本文件中。當生成新行時,必須用新行覆蓋該文件。如何定期保存程序輸出的最後一行?
我認爲它必須是非常簡單的解決方案,但是我無法用我對shell命令的瞭解。
謝謝!
像這樣的事情會是一個可能的解決方案
./your_program | (while true; do read tmp && echo "$tmp" > $file; done)
其中$file
是您的文件。
... | awk '{ print > "output"; close("output")}'
將用每一行新的輸出截斷輸出文件。
這永遠不會終止! '讀了tmp;做回聲「$ tmp」...「會更好。 – 2013-02-21 20:37:53
你是對的!我沒有測試過。 – 2013-02-21 21:54:32