附加命令以在長時間運行的線程返回時執行

附加命令以在長時間運行的線程返回時執行

假設我剛剛啟動了一個需要很長時間才能執行的命令,就像hg clone整個 Pypy 開發集一樣。中途,我決定hg up在第一個進程返回後運行另一個進程,例如 。有沒有辦法在進程返回時附加要執行的命令,而無需停止命令/進程,然後將其作為連結命令重新啟動?命令/進程?

答案1

假設您正在使用,並且假設您通過運行或啟動任務然後按+將bash長時間運行的任務放入當前 shell 的後台,那麼您可以添加一個額外的命令來運行,例如:longtask &CTRLZ

$ sleep 45 &
[1] 27722
$ wait 27722 && echo "Done"
[1]+  Done   sleep 45
Done
$

在上面的範例中,僅在 PID 27722echo "Done"完成後才執行。wait

我還沒有找到一種方法來將此附加命令放入後台,以允許您繼續在同一個 shell 中工作。但一定有辦法做到這一點 - 這應該會給你一個開始。

相關內容