我目前正在做一個奇怪的專案'Shellcord',它是一個只用bash和一些內置程式構建的discord機器人。
我已經能夠獲得心跳的間隔。所以我的問題是。我的回圈看起來像這樣:
(while true)
do
睡眠$interval
echo '{"op":1, "d":null}'/span> > ws0
done)&。
現在,我也能夠關閉這個機器人了。然而,我怎樣才能停止這個心跳回圈呢?
uj5u.com熱心網友回復:
最簡單的方法是:
(while true; do>
sleep $interval; do.
echo '{"op":1, "d":null}'
done)&。
trap "kill $!" 0
如果你在退出清理時有更多的事情要做,你將需要更復雜的東西。 你也可以在開始回圈之前設定陷阱,向行程組發出信號。比如說:
pgid=$(ps -o pgid= $$| tr -d ' ')
trap 'kill -- -$pgid' 0
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/324971.html
標籤:
上一篇:在處理命名管道時,fishshell和bash之間有什么區別?
下一篇:改變APEX_MAIL包
