如何中断我的脚本?

如何中断我的脚本?

我使用以下脚本(从命令启动at)作为警报:

/bin/sh #!/bin/sh

设置-m

while true; 执行
  paplay /usr/share/sounds/phone.wav
完毕 &

我想绑定一个键来停止这个警报。请帮忙写一个可以找到并终止此进程的脚本。

答案1

将以下内容添加到脚本末尾:

PID=$!
echo $PID > /tmp/wakeupalarm.pid

那么你的杀戮脚本将是

#!/bin/bash
PidFile=/tmp/wakeupalarm.pid

[ -f $PidFile ] && kill $(< $PidFile) && echo > $PidFile

还应该在报警脚本启动时运行终止脚本,以确保进程的单实例。

答案2

这应该有效

#!/bin/bash
pid=$(ps aux | grep scriptname.sh | awk -F ' ' ' { print $2 } '
kill $pid

但我确信还有更好的方法。

相关内容