at
В качестве будильника я использую следующий скрипт (который запускаю из команды):
#! /bin/ш набор -м пока правда; делать 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
Хотя я уверен, что есть способы и получше.