日期:2014-05-16  浏览次数:20664 次

一个shell,错在哪儿?
程序:
#!/bin/sh
kill   -9   'ps   -ef|grep   java|grep   -v   grep   |awk   '{print   $2} ' '
i= 'ps   -ef   |grep   java   |grep   -v   grep   |wc   -l '

if   [$i   -eq   0]
then
echo   "WebLogic   Stop   Successfull! "
else
echo   "WebLogic   stop   Error! "
fi

报错信息:
stopWebLogic.sh[2]:   ps   -ef|grep   java|grep   -v   grep   |awk   {print:   Specify   a   process   identifier   or   a   %job   number.
stopWebLogic.sh[5]:   [ps:     not   found.
WebLogic   stop   Error!

环境:
AIX
WebLogic8


xx

------解决方案--------------------
kill -9 `ps -ef|grep java|grep -v grep |awk '{print $2} '`
i=`ps -ef |grep java |grep -v grep |wc -l`

你-9 后面的那个附和错了,你写成单引号了.
这两行你都写学错,应该用1键左边那个键上的符号.
------解决方案--------------------
kill -9 'ps -ef|grep java|grep -v grep |awk '{print $2} ' '
i= 'ps -ef |grep java |grep -v grep |wc -l '

两行直接sleep几秒试一下
------解决方案--------------------

kill -9 'ps -ef|grep java|grep -v grep |awk '{print $2} ' '
sleep 5
i= 'ps -ef |grep java |grep -v grep |wc -l '