Tail

其他程序完成時退出尾部

  • November 5, 2015

我有

parallel --j 2 -- "sh script1" "sh script2"

在哪里script1script2登錄文件log1log2

我想將其更改為:

parallel --j 3 -- "sh script1" "sh script2" "tail -f log1 log2"

使用tail的原因是當我允許兩個腳本同時在螢幕上輸出時——輸出變得一團糟,我失去了游標等問題——幾乎每次執行後我都需要重新啟動終端。

但問題是現在這將永遠存在,我希望在 script1 和 script2 完成後退出。我怎麼能這樣做?

實際上,我找到了我需要做的事情:

parallel --j 2 -- "sh script1" "sh script2" &
PID=$!
tail --pid=$PID -f log1 log2

這也可能不是您想要的,但是如何:

parallel --j 2 -- "sh script1" "sh script2"; tail log1 log2

完成這兩項工作後,您將無需等待tail兩個日誌文件。

引用自:https://unix.stackexchange.com/questions/240556