我是 shell 脚本的新手。
我想做的是避免运行脚本的多个实例。
我有这个 shell 脚本 cntps.sh
#!/bin/bash
cnt=`ps -e|grep "cntps"|grep -v "grep"`
echo $cnt >> ~/cntps.log
if [ $cnt < 1 ];
then
#do something.
else
exit 0
fi
如果我以这种方式运行它$./cntps.sh
,它会回显 2
如果我以这种方式运行它$. ./cntps.sh
,它会回显 0
如果我用 运行它crontab
,它会回显 3
有人可以向我解释为什么会这样吗?避免运行多个脚本实例的正确方法是什么?