Date: Sun, 27 Jan 2002 20:19:16 -0500 From: "Dan Langille" <dan@langille.org> To: freebsd-hackers@freebsd.org Subject: shell scripts that hang around forever Message-ID: <200201280119.g0S1JHD97804@lists.unixathome.org>
next in thread | raw e-mail | index | archive | help
Folks: have a look at this FreshPorts shell script and let me know if
there is a better way to do this.
This script waits for a file to arrive in a directory, then runs a scipt
to process it. It's part of FreshPorts. the procmail script spools the
incoming cvs-all message to a temporary location, then moves it to the
incoming directory.
The lockfile is an attempt to make the script single-entry (only one
instance at a time). If fails because the only way to exit the script is
to terminate it...
At present, this script runs within a screen session (that's the easiest
way to control it). This script is sort of like a daemon, and I'm tempted
to replace it with one. If it was a daemon, I'm sure that would be much
easier.
#!/bin/sh
LOCKFILE=${HOME}/msgs/processing.lock
MSGSDIR=${HOME}/msgs/FreeBSD/incoming
lockfile -r 0 $LOCKFILE
RESULT=$?
#echo result='$RESULT'
if [ $RESULT = 0 ]
then
cd ${MSGSDIR}
while .
do
FILECOUNT=`ls | wc -l`
if [ $FILECOUNT -ne 0 ]
then
ls | xargs -n 1 $HOME/scripts/test-freebsd-cvs.sh
fi
sleep 1
done
rm -rf ${LOCKFILE}
fi
--
Dan Langille
The FreeBSD Diary - http://freebsddiary.org/ - practical examples
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200201280119.g0S1JHD97804>
