當多個長時間運行的命令完成時,如何獲得音訊通知?

當多個長時間運行的命令完成時,如何獲得音訊通知?

這個問題類似,但不同
當 shell 命令完成時如何獲得音訊通知?
我正在尋找一個可以像這樣使用的命令

sleep 2 &; sleep 1 &; sleep 5 &; sleep 3; bell

5 秒後發出聲音通知。

我用zsh在一個KDE konsole.

答案1

怎麼樣

sleep 2 &; sleep 1 &; sleep 5 &; sleep 3 &; for job in `jobs -p` ; do wait $job ; done ; bell

(簡化自https://stackoverflow.com/questions/356100/how-to-wait-in-bash-for-several-subprocesses-to-finish-and-return-exit-code-0)?

附註:我在 GNU bash 版本 4.3.48 中而不是 zsh 中進行了測試,並使用 beep 代替了響鈴。我的實際命令略有不同:

sleep 2 & sleep 1 & sleep 5 & sleep 3 & for job in `jobs -p` ; do wait $job ; done ; beep

答案2

您可以使用sleep 2 & sleep 1 & sleep 5 & wait; xkbbell -force。您可能需要modprobe pcspkr以 root 身分執行。

相關內容