summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/autoshut.sh42
1 files changed, 42 insertions, 0 deletions
diff --git a/bin/autoshut.sh b/bin/autoshut.sh
new file mode 100755
index 0000000..8c677ee
--- /dev/null
+++ b/bin/autoshut.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+function idle {
+ prog="$1"
+ while pgrep "$prog" >/dev/null; do
+ sleep 3
+ done
+ shutdown -hP now
+}
+
+prog="irssi"
+daemon=false
+
+if [ $UID != 0 ]; then
+ read -p "We aren't root! Are you sure you have the proper permissions? If yes, press any key to continue or CTRL+C to abort. " null
+fi
+
+while [ $# -gt 0 ]; do
+ if [ "$1" == "-p" ]; then
+ shift
+ prog="$1"
+ shift
+ elif [ "$1" == "-d" ]; then
+ daemon=true
+ shift
+ else
+ echo "Unsupported argument '$1'" 1>&2
+ exit 1
+ fi
+done
+
+if [ -z "$prog" ] || [ "$prog" == "" ]; then
+ echo "I'm confused. Which programm shall I monitor? Tell me, master!" 1>&2
+ exit 1
+fi
+
+if [ $daemon == true ]; then
+ idle "$prog" >/dev/null 2>&1 &
+ disown
+else
+ idle "$prog" >/dev/null 2>&1
+fi