From: James Bunton Date: Thu, 11 Oct 2012 10:46:47 +0000 (+1100) Subject: monitor-dir: track changes in a directory X-Git-Url: https://code.delx.au/mediapc-tools/commitdiff_plain/527be7ae1668d9ebc0c3450233299c6c618830a7?hp=f97d1dfefddc844a1129f75899b6d44c47ccec9d monitor-dir: track changes in a directory --- diff --git a/monitor-dir b/monitor-dir new file mode 100755 index 0000000..6f1c940 --- /dev/null +++ b/monitor-dir @@ -0,0 +1,18 @@ +#!/bin/bash -e + +# Use with crontab entry like: +# */5 * * * * $HOME/bin/monitor_dir /path/to/something + +if [ -z "$1" ]; then + echo "Usage $0 dir [monitor_file]" + exit 1 +fi +mon="$1/${2:-.monitor_dir}" +mon_tmp="${mon}_tmp" + +ls -R "$1" > "$mon_tmp" +if [ -r "$mon" ] && ! cmp -s "$mon" "$mon_tmp" && [ -n "$(ls "$1")" ]; then + cat "$mon_tmp" +fi +mv "$mon_tmp" "$mon" +