]> code.delx.au - spectrwm/blobdiff - baraction.sh
Use cut instead of awk for some sort of mem saving.
[spectrwm] / baraction.sh
index 03c32d21f5bae481ba4f217c03a2ef843f93e95a..57f0e60e7eff90521afb64830bb3c7f03744d6b5 100644 (file)
@@ -1,4 +1,6 @@
 #!/bin/sh
+#
+# $scrotwm$
 
 print_date() {
        # The date is printed to the status bar by default.
@@ -10,7 +12,7 @@ print_date() {
 }
 
 print_mem() {
-       MEM=`/usr/bin/top | grep Free: | awk {'print $6'}`
+       MEM=`/usr/bin/top | grep Free: | cut -d " " -f7`
        echo -n "Free mem: $MEM  "
 }
 
@@ -78,8 +80,10 @@ while :; do
        # instead of sleeping, use iostat as the update timer.
        # cache the output of apm(8), no need to call that every second.
        /usr/sbin/iostat -C -c 3600 |&  # wish infinity was an option
+       PID="$!"
        APM_DATA=""
        I=0
+       trap "kill $PID; exit" TERM
        while read -p; do
                if [ $(( ${I} % 1 )) -eq 0 ]; then
                        APM_DATA=`/usr/sbin/apm -alb`