たとえば、
#!/bin/bash
while :
do
sl
done
このbashスクリプトを終了するにはどうすればよいですか?
承認された回答:
プログラムsl
SIGINT
を意図的に無視します 、 Ctrl + Cを押すと送信されます 。したがって、最初に、sl
に指示する必要があります SIGINT
を無視しないでください -e
を追加する 引数。
これを試してみると、個々のsl
を停止できることがわかります。 、しかしそれらはまだ繰り返されます。 bash
に伝える必要があります SIGINT
の後に終了します 同じように。これを行うには、trap "exit" INT
を配置します。 ループの前。
#!/bin/bash
trap "exit" INT
while :
do
sl -e
done