我正在運行一堆shell腳本,如 parallel -a my_scripts bash
並且在某些時候,我決定我已經運行了足夠的這些腳本,並且希望停止產生新的作業,並讓所有現有作業完成。換句話說,我想殺死父母的過程而不殺害孩子。如何在不殺死正在運行的作業的情況下終止GNU並行?
似乎有ways of controlling termination when first launching GNU parallel(例如,如果我事先知道,我只想要運行x
工作,然後我可以使用--halt now,success=x
參數),但我找不到如何控制GNU平行時,它已經在運行。
當然,我可以只是CTRL+C
殺死並行,並重新運行被中止的工作,但我認爲可能有一個更聰明的方法。
有可能是一種方式與** GNU並行**做到這一點,但另一種選擇可能是使用Redis的這樣...... https://stackoverflow.com/a/22220082/2836621 –
**任務後臺程序**可能是另一種可能性... http://www.ubuntugeek.com/task-spooler-personal-job-scheduler.html –