#!/bin/sh
if [ -f /var/run/somepid ]; then
# Found a pid file
ps -p `cat /var/run/somepid` > /dev/null
if [ $? eq 0 ]; then
# It's still running
echo "Already running"
exit
fi
# Stale pid file
rm /var/run/somepid
fi
echo $$ > /var/run/somepid
# Do your stuff
SirDice said:A really, really simple approach:
Code:#!/bin/sh if [ -f /var/run/somepid ]; then # Found a pid file ps -p `cat /var/run/somepid` > /dev/null if [ $? eq 0 ]; then # It's still running echo "Already running" exit fi # Stale pid file rm /var/run/somepid fi echo $$ > /var/run/somepid # Do your stuff