复杂锁shell代码:
LOCKFILE="/tmp/lock"
if [ -f "$LOCKFILE" ]
then
pid=`cat $LOCKFILE`
[ -n "$pid" ] && ps -p $pid | grep $pid >/dev/null
[ $? -eq 0 ] && echo "script is running..." && exit 1
fi
echo $$ > "$LOCKFILE"
if [ -f "$LOCKFILE" ]
then
pid=`cat $LOCKFILE`
[ -n "$pid" ] && ps -p $pid | grep $pid >/dev/null
[ $? -eq 0 ] && echo "script is running..." && exit 1
fi
echo $$ > "$LOCKFILE"