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

Ano*_*ous 84 c linux cron gcc crontab

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

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

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

0 * * * *  /path_to_executable
Run Code Online (Sandbox Code Playgroud)

但是,cron作业不起作用.

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

joa*_*ast 144

0 * * * * cd folder_containing_exe && ./exe_name
Run Code Online (Sandbox Code Playgroud)

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

  • 使用&&而不是;,否则可能会发生异常的事情(特别是与rm一起使用时) (9认同)
  • 你是对的.如果有可能cd目标不存在,则&&会好得多(例如,如果Diretory在NFS服务器上发生故障). (2认同)

Dav*_*ley 8

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


Mar*_*iba 7

您还可以使用@hourly即时0 * * * *

  • @ojblass `@hourly` 是 `0 * * * *` 的同义词,没有区别。 (2认同)

Jam*_*tes 5

如果您使用的是 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