#!/bin/sh # # fsniper Monitors directories for new files and invokes scripts on them # # chkconfig: - 55 65 # description: fsniper is a tool that monitors a given set of directories for \ # new files. Then, based on the new file's type or name, it \ # invokes a script to be run (any executable via the shell) on \ # that file. Common uses include making a single drop directory \ # for all things from a webbrowser etc, and having \ # semi-intelligent scripts figure out what to do with those \ # files. You write the scripts yourself. RETVAL=0 PROG=fsniper EXEC=/usr/bin/fsniper LOCK_FILE=/var/lock/subsys/fsniper CONFIG_FILE=/etc/fsniper.conf # Source function library. . /etc/init.d/functions [ -e /etc/sysconfig/$PROG ] && . /etc/sysconfig/$PROG start() { [ -x $EXEC ] || exit 5 echo -n $"Starting $PROG: " daemon --user=$USER $EXEC --daemon $CONFIG_FILE 1>/dev/null && success || failure RETVAL=$? [ "$RETVAL" = 0 ] && touch $LOCK_FILE echo } stop() { echo -n $"Stopping $PROG: " killproc $PROG RETVAL=$? [ "$RETVAL" = 0 ] && rm -f $LOCK_FILE echo } restart() { stop start } reload() { echo -n $"Reloading $PROG: " killproc $PROG -HUP echo } rh_status() { status $PROG } rh_status_q() { rh_status >/dev/null 2>&1 } case "$1" in start) rh_status_q && exit 0 start ;; stop) rh_status_q || exit 0 stop ;; restart|force-reload) stop start ;; reload) rh_status_q || exit 7 reload ;; status) rh_status ;; condrestart|try-restart) if [ -f $LOCK_FILE ]; then if [ "$RETVAL" = 0 ]; then stop sleep 3 start fi fi ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" RETVAL=2 esac exit $?