added command handling
This commit is contained in:
parent
b1883f0ec6
commit
e177bedd69
3 changed files with 68 additions and 1 deletions
38
command_watcher.sh
Executable file
38
command_watcher.sh
Executable file
|
@ -0,0 +1,38 @@
|
|||
#!/bin/bash
|
||||
|
||||
COMMAND_FILE=/tmp/command
|
||||
COMMAND_FILE_TMP=/tmp/command_tmp
|
||||
|
||||
lounge_light() {
|
||||
echo "not implemented"
|
||||
}
|
||||
|
||||
lounge_light_toggle() {
|
||||
./light.sh
|
||||
}
|
||||
|
||||
cd "$(dirname $0)"
|
||||
touch "$COMMAND_FILE"
|
||||
chmod 666 "$COMMAND_FILE"
|
||||
while inotifywait -qq -e close_write "$COMMAND_FILE"; do
|
||||
mv "$COMMAND_FILE" "$COMMAND_FILE_TMP"
|
||||
sleep .1 # wait for possible further/parallel writes to end
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
echo "Text read from file: $line"
|
||||
case "$line" in
|
||||
lounge_light_toggle)
|
||||
lounge_light_toggle
|
||||
;;
|
||||
lounge_light*)
|
||||
lounge_light "$COMMAND"
|
||||
;;
|
||||
*)
|
||||
echo "ERROR; available commands:" >&2
|
||||
echo "lounge_light lounge_light_toggle" >&2
|
||||
;;
|
||||
esac
|
||||
done < "$COMMAND_FILE_TMP"
|
||||
rm "$COMMAND_FILE_TMP"
|
||||
touch "$COMMAND_FILE"
|
||||
chmod 666 "$COMMAND_FILE"
|
||||
done
|
Loading…
Add table
Add a link
Reference in a new issue