【问题标题】:Crontab no error but doesn't execute scriptcrontab 没有错误但不执行脚本
【发布时间】:2013-06-04 20:59:34
【问题描述】:

我正在尝试从 Freebsd 上的 cron 执行 shell 脚本。

为了测试crontab 是否正常工作,我写了一行

  * * * * * echo "Hello" > /home/myuser/logile  

它工作正常。

但是当尝试执行任何脚本时,它什么都不做,甚至没有错误。 (在我尝试运行的脚本中只是相同的 echo 命令) 下面是crontab -l的输出:

SHELL=/bin/sh  
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin  
HOME=/home/myuser  
MAILTO=myuser  
* * * * * /home/myuser/shellscript.sh > /home/myuser/logfile  

为什么脚本没有被执行,尽管crontab 显然正在运行? 所有文件的权限都设置为rwxr-xr-x

【问题讨论】:

  • 你能发布脚本吗?我知道你说这是微不足道的......但是......:P
  • 脚本是:#!/bin/sh echo "hello" 并且在 interaktive shell 中工作;-)

标签: freebsd crontab


【解决方案1】:

您是否检查过命令行在行尾是否有换行符/CR?当我使用 crontab -e 编辑 cron 作业时,我根本没有在行尾按 Enter 键,试图找到在 cron 上不执行 php 脚本的原因,我挣扎了几个小时 :-)

【讨论】:

  • 非常感谢您提供此信息。在行尾按 enter 为我解决了这个问题。谢谢。
【解决方案2】:

你查过/var/log/cron的线索了吗?

【讨论】:

    【解决方案3】:
    * * * * * /bin/sh /home/myuser/shellscript.sh
    

    * * * * * /bin/bash /home/myuser/shellscript.sh
    

    在 Macosx 10.6 中以 root 用户身份为我工作

    【讨论】:

      【解决方案4】:

      你试过了吗

      * * * * * /bin/sh /home/myuser/shellscript.sh > /home/myuser/logfile 
      

      【讨论】:

        【解决方案5】:

        cron 通过电子邮件将任何错误发送给 crontab 文件的所有者(通常是“root”,因此您可以查看该帐户的电子邮件)。要将任何错误邮寄到“crontabOnFreebsd”:

        MAILTO=crontabOnFreebsd
        

        在您的 crontab 中(靠近顶部)。

        有关更多信息,请发出以下命令:

        man 5 crontab
        

        【讨论】:

          【解决方案6】:

          如果您遇到错误,那么您的日志文件可能无法捕获它,请尝试以下操作:

          * * * * * /home/myuser/shellscript.sh > /home/myuser/logfile 2> /home/myuser/errorfile
          

          我已经有一段时间没有做任何 cron 的东西了;但总是让我着迷的事情:

          1. 未设置环境变量:通常我发现有必要为所有命令设置完整路径(甚至是“cat”之类的东西)[或至少在脚本本身中设置 ENV 变量]。

          2. 确保拥有脚本等的用户确实是运行脚本的用户:当您从交互式 shell 进行测试时,这可能不是同一个用户。脚本可能写入的目录/文件也是如此。

          3. 另外:检查 root 用户的电子邮件 - 您可能会发现错误已转移到收件箱,这可能会帮助您进一步解决此问题。

          【讨论】:

            猜你喜欢
            • 2011-10-22
            • 2013-08-28
            • 1970-01-01
            • 2016-10-03
            • 1970-01-01
            • 2020-03-16
            • 2013-04-19
            • 2020-05-30
            • 2017-09-07
            相关资源
            最近更新 更多