簡體   English   中英

如何編寫腳本以在后台運行多個進程並在每個單獨的命令完成后運行其他命令?

[英]How do I write a script to run multiple processes in the background and have additional commands run once each individual command completes?

我正在嘗試在 bash 腳本中執行以下操作:

for x in a b c; do echo foo $x; sleep 5 & y=$! ; (wait $y && echo bar $x) & done

在不增加太多復雜性的情況下,這可能嗎(上面的例子當然不起作用)?

編輯:

當然在現實中, echo foo $x; sleep 5 echo foo $x; sleep 5例如,復制一些大文件或編譯大文件,第二個操作將是依賴於第一個操作的操作。

也許我錯過了一些東西,但是使用() s 並將&放在整個子組命令上怎么樣......

for i in 1 2 3; do (echo $i; sleep 5; echo end $i)& done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM