]> code.delx.au - mediapc-tools/blob - monitor-dir
monitor_dir: more options & only display diff
[mediapc-tools] / monitor-dir
1 #!/bin/bash -e
2
3 # Use with crontab entry like:
4 # */5 * * * * $HOME/bin/monitor_dir /path/to/something
5
6 if [ -z "$1" ]; then
7 echo "Usage $0 dir [monitor_file] [ls-options]"
8 exit 1
9 fi
10 mon="${2:-$1/.monitor_dir}"
11 mon_tmp="${mon}_tmp"
12
13 ls "${3:--tlR}" "$1" > "$mon_tmp"
14 if [ -r "$mon" ] && ! cmp -s "$mon" "$mon_tmp" && [ -n "$(ls "$1")" ]; then
15 diff "$mon" "$mon_tmp" | grep '^> ' | sed 's/^> //'
16 fi
17 mv "$mon_tmp" "$mon"
18