首页 文章

如何设置一个cron作业来每小时运行一个可执行文件?

提问于
浏览
81

我需要设置一个cron作业,每小时运行一次使用gcc编译的可执行文件 .

我以root身份登录并输入了 crontab -e

然后我输入以下内容并保存文件 .

0 * * * *  /path_to_executable

但是,cron作业不起作用 .

我看到当我输入 /...path_to_executable 时出现分段错误 . 我只能从它所在的文件夹中执行可执行文件 . 有没有办法可以解决这个问题?

7 回答

  • 0

    由于我无法以这种方式运行 C executable ,我写了一个简单的 shell script ,它执行以下操作

    cd /..path_to_shell_script
    ./c_executable_name
    

    在cron作业列表中,我调用了shell脚本 .

  • 138

    使用

    path_to_exe >> log_file
    

    要查看命令的输出,还可以重定向错误

    path_to_exe &> log_file
    

    你也可以用

    crontab -l

    检查您的编辑是否已保存 .

  • 1

    解决这个问题的解决方案是找出你为什么会遇到分段错误并解决它 .

  • 2

    你也可以使用 @hourly 瞬间 0 * * * *

  • 4

    如果您使用的是Ubuntu,则可以将shell脚本放在以下文件夹中: /etc/cron.daily/etc/cron.hourly/etc/cron.monthly/etc/cron.weekly .

    有关更多详细信息,请查看此帖子:https://askubuntu.com/questions/2368/how-do-i-set-up-a-cron-job

  • 7

    您是不是意味着可执行文件无法运行,如果从任何其他目录调用?这是可执行文件的一个错误 . 一个可能的原因可能是可执行文件需要安装文件夹中的一些共享库 . 你可以查看环境变量 LD_LIBRARY_PATH

  • 3
    0 * * * * cd folder_containing_exe && ./exe_name
    

    应该工作,除非有其他东西需要设置程序运行 .

相关问题