避免Linux脚本多次运行


环境:Linux操作系统

#>vi runonce

#/bin/bash
##判断有同名shell是否正在执行
PG=`basename $0`
PN=`ps -ef | grep "$PG"| grep -v "grep" | awk 'BEGIN {a=0;} {a++;} END{print(a)}'`

#如果没有重复实例,正常执行
if [ $PN -le 0 ]
then
echo startup now!
if [ -x $1 ]; then
. $1
else
echo excute access deny: $1
fi
#如果已经有个实例在运行,退出本实例
else
echo already startup!
exit 1;
fi
调用runonce a.sh

相关内容