#! /bin/basha
INOTIYF_BIN_ROOT='/root/inotify-tools/src/inotifywait'
INOTIFY_EVENT_MODE='modify,create,delete'
INOTIFY_BACKUP_DIR='/root/bomfile'
INOTIFY_FORMAT='%e@%w%f'
INOTIFY_EXCLUDE='(.*/*\.swp)'
INOTIFY_OUTFILE='/root/log.log'
function inotify_start() {
${INOTIYF_BIN_ROOT} -m -r -q --format ${INOTIFY_FORMAT} --exclude ${INOTIFY_EXCLUDE} -e ${INOTIFY_EVENT_MODE} ${INOTIFY_BACKUP_DIR} | while read listener
do
INFO_EVENT=$(echo $listener | cut -d '@' -f 1)
INFO_FILE=$(echo $listener | cut -d '@' -f 2)
echo $INFO_EVENT
if [ $INFO_EVENT == 'CREATE' ] || [ $INFO_EVENT == 'MODIFY' ] || [ $INFO_EVENT == 'CREATE,ISDIR' ]
then
echo $INFO_EVENT '=============' $INFO_FILE
fi
if [ $INFO_EVENT == 'DELETE' ] || [ $INFO_EVENT == 'DELETE,ISDIR' ]
then
echo $INFO_EVENT 'ddddddddddddddddddddddddddd' $INFO_FILE
fi
done
}
case "$1" in
start)
inotify_start
;;
stop)
echo 'stop'
;;
*)
echo 'none'
esac
inotifywait -m 是监视器, -d 是后台运行,后台运行时需要 --outfile 指定