at
Als Alarm verwende ich folgendes Skript (welches ich per Kommando starte ):
#! /bin/sh setze -m während wahr; tun paplay /usr/share/sounds/phone.wav Erledigt &
Ich möchte eine Taste zuweisen, um diesen Alarm zu stoppen. Bitte helfen Sie, ein Skript zu schreiben, das diesen Prozess lokalisieren und beenden kann.
Antwort1
Fügen Sie am Ende Ihres Skripts Folgendes hinzu:
PID=$!
echo $PID > /tmp/wakeupalarm.pid
Dann wird Ihr Tötungsskript sein
#!/bin/bash
PidFile=/tmp/wakeupalarm.pid
[ -f $PidFile ] && kill $(< $PidFile) && echo > $PidFile
Sie sollten das Kill-Skript auch zu Beginn des Alarm-Skripts ausführen, um eine einzelne Instanz des Prozesses sicherzustellen.
Antwort2
Das sollte funktionieren
#!/bin/bash
pid=$(ps aux | grep scriptname.sh | awk -F ' ' ' { print $2 } '
kill $pid
Ich bin sicher, dass es bessere Möglichkeiten gibt.