代码之家  ›  专栏  ›  技术社区  ›  Zaks

crontab找不到正在运行的进程

  •  0
  • Zaks  · 技术社区  · 6 年前

    crontab如下所示:

    SHELL=/bin/bash
    
    * * * * *  /home/zaks/influx_rabbitmq_restorer.sh > /home/zaks/crontab.txt 2>&1
    

    influx_rabbitmq_restorer.sh :

    ps -aux | grep -v grep | grep rabbitmq_restorer
    RESULT=$?
    echo $RESULT
    if [ $RESULT -eq 0 ]; then
       echo "running"
    else
       echo "not running"
       (nohup python -u  /home/zaks/rabbitmq_restorer.py  )
    fi
    
    1. 当我手动运行脚本时 /home/zaks/influx_rabbitmq_restorer.sh 结果是1(“未运行”)。

    2. 但cronjob登录 /home/zaks/crontab.txt 显示:

      zaks 11612  0.0  0.0  12504  2936 ?        Ss   03:15   0:00 /bin/bash -c /home/zaks/influx_rabbitmq_restorer.sh > /home/zaks/crontab.txt 2>&1
      zaks 11613  0.0  0.0  12516  2388 ?        S    03:15   0:00 /bin/bash -c /home/zaks/influx_rabbitmq_restorer.sh > /home/zaks/crontab.txt 2>&1
      0
      running
      

    cronjob无法检测 rabbitmq_restorer 过程。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Romeo Ninov    6 年前

    将脚本的第一行编辑为:

    ps -aux | grep -v grep | grep -v influx_rabbitmq_restorer.sh| grep rabbitmq_restorer