首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

shell 判断进程是否存在,大家帮忙看看。解决方案

2012-03-11 
shell 判断进程是否存在,大家帮忙看看。。我又一个用C写的代码,通过.sh文件来调用,在调用前判断进程中是否存

shell 判断进程是否存在,大家帮忙看看。。
我又一个用C写的代码,通过.sh文件来调用,在调用前判断进程中是否存在,存在则等待,
while :  
do 
  pro=$(ps -ef |grep "mypro" |grep -v "grep")
  echo $pro
  if [ "$pro" ] ; then
  sleep 20
  else
  break
  fi
done

# mypro是我得C语言代码的
# 调用C写的文件省略。。。。

网上找了个这样的例子,
现在的情况是,无论进程并不存在mypro(我没在跑), 都会进sleep 20 这个分支,怎么会这样,求高手指教

还有可能是版本的原因,不支持pgrep的命令,所以这种解决办法,不是我想要的,
谢谢!

[解决办法]
Learning.the.bash.Shell.3rd.Edition.chm
[解决办法]
sh的名字与c程序的相同 这个是问题所在。
[解决办法]
直接这样试试

if ps -ef |grep "mypro" |grep -v "grep"
then
echo "here"
fi

热点排行