首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > 其他服务器 >

crontab的调用有关问题

2012-02-09 
crontab的调用问题我写了一个脚本,想要通过crontab定时调用,在该脚本存放的当前文件夹下可以执行,但是通过

crontab的调用问题
我写了一个脚本,想要通过crontab定时调用,在该脚本存放的当前文件夹下可以执行,但是通过crontab中执行时,进程无法调度起来,而且一直显示的是该进程已起~~
脚本核心部分内容:
ps -ef |grep Jcrontab | grep -v grep | wc -l | read pro_count
  if [ $pro_count -lt 1 ]
  then
  nohup java org.jcrontab.Jcrontab > ../logs/loger.log &
  echo "Jcrontab startup ,logs in ../logs dir"
  else
  echo "there is already ${pro_count}" process with key \"Jcrontab\" exists
  fi

当手动 ps -ef |grep Jcrontab | grep -v grep | wc -l ,输出结果为:0
但是通过crontab执行,他输出的结果却是:  
echo "there is already ${pro_count}" process with key \"Jcrontab\" exists,表示脚本是存在的,很奇怪,不知道为什么,请高手指点一下~


[解决办法]
你执行以下这句话ps -ef |grep Jcrontab | grep -v grep | wc -l | read pro_count 
然后 echo $pro_count一下看看结果是什么? 看了你就会知道
我试了$pro_count -lt 1根本就不会成立 当然会执行else后的语句了

你是想把ps -ef |grep Jcrontab | grep -v grep | wc -l的结果写到赋给pro_count吗
那这样写吧
pro_count=`ps -ef |grep Jcrontab | grep -v grep | wc -l`
[解决办法]
不知道怎么回事了
反正我执行你的代码
ps -ef |grep Jcrontab | grep -v grep | wc -l | read pro_count 
这样的代码之后 echo $pro_count 显示的都是空行(非数字)
[解决办法]
ps -ef |grep Jcrontab | grep -v grep | wc -l | read pro_count 
把上面一句改为:
pro_count=`ps -ef |grep Jcrontab | grep -v grep | wc -l`

热点排行