crontab 不适用于可执行文件

crontab 不适用于可执行文件

我尝试让我的电脑休眠一分钟,然后每 5 分钟唤醒一次,我使用了以下命令

*/5 * * * * /usr/sbin/rtcwake -m mem -s 60 

来实现这一点,并且效果很好。

但是当我尝试通过从代码编译的可执行文件执行此操作时

#include<stdio.h>

int main()
{
system("rtcwake -m mem -s 60");
return 0;

} 

在我的主文件夹中并将 crontab 更改为

*/5 * * * * /home/****/./a.out

对于上面提供的 C 代码来说a.out是可执行的,它不执行任何操作。

我可以看到 crontab 每 5 分钟定期执行 a.out一次grep CRON /var/log/syslog。但我的电脑没有进入睡眠状态。

我该如何修复它?

答案1

为了确保system命令能够找到,rtcwake请更新您的 C 代码以获得完整路径该计划:

system("/usr/sbin/rtcwake -m mem -s 60");

相关内容