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>