bash单例模式

LOCK_FILE="/tmp/test.lock"

if [ -e "$LOCK_FILE" ]
then
        PID="`cat $LOCK_FILE`"
        kill -0 $PID 2>/dev/null
        if [ "$?" = "0" ]
        then
                echo "I am running PID: $PID."
                exit
        else
                echo "I am not running PID: $PID."
        fi
fi

trap "/bin/rm -f $LOCK_FILE" EXIT TERM INT
echo "$$" > "$LOCK_FILE"

 

posted on 2025-07-08 16:57  toong  阅读(11)  评论(0)    收藏  举报