マイスクリプト:私は私のスクリプトを実行中のプロセスにコマンドを送信するとkill -SIGTERM <pid>
直ちにループをスキップして、killコマンドでトラップして処理する方法はありますか? [BASH]
#!/bin/bash
finish() {
echo "[$(date -u)] I was terminated."
exit
}
trap finish SIGINT SIGTERM
echo "pid is $$"
while true
do
echo 'I am running'
sleep 15
done
は、私が実行されますsleep 15
まで待たなければなりません。私はグーグルではありますが、すぐにループから抜け出し、kill
コマンドを送信するとtrap
を実行する方法には何の答えも見つかりませんでした。
終了する前に 'kill $!'を置くと、sleepコマンドも終了します。 –
@Ipor Sircer、これは本当です。私は説明を加えました。ありがとう。 –