懂bourne shell或者if语句的进~!分数不是问题

来源:百度知道 编辑:UC知道 时间:2024/09/20 14:32:25
以下脚本中是哪里有错误,麻烦高手帮忙指出下,我感觉应该是第四行的中括号里有问题,但我不懂这个该怎么改,会不会是有格式上的错误呢?

#!/bin/sh
APPNAME=CSONGateway
PROCESS_NUM=‘ps -ef|grep "$APPNAME"|grep -v "grep"|wc -l’
if [ $PROCESS_NUM -ge 1 ]
then
echo "exit 0"
exit 0
else
echo "exit 1"
exit 1
fi

PROCESS_NUM=‘ps -ef|grep "$APPNAME"|grep -v "grep"|wc -l’
你确定‘ 符号你用的是 `么?

PROCESS_NUM=`ps -ef|grep "$APPNAME"|grep -v "grep"|wc -l`
你复制我上面这一行去看一下,
我执行正确无错误

注意ps -ef这里 你是不用了单引号或者是中文引号
应当用``
PROCESS_NUM=`ps -ef|grep "$APPNAME"|grep -v "grep"|wc -l`

或者直接改成
PROCESS_NUM=$(ps -ef|grep "$APPNAME"|grep -v "grep"|wc -l)

另外建议if 里面的变量是不是用双引号括起来比较好, 这里没有什么问题, 只是建议