微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – Raspberry pi中的Crontab不会运行非常简单的脚本

我是 Linux的新手,我在RaspBerry Pi中一直在努力解决这个问题并且没有成功.

首先,我在/home/myfile.sh中编写了一个简单的脚本,如下所示:

#!/bin/bash
clear
echo "hi"

然后我做了sudo chmod 755 /home/myfile.sh来授予权限.

最后我使用crontab -e修改了crontab:

# some comments ...
* * * * * /home/myfile.sh

问题:

当我手动运行脚本时它工作正常但是当我在我的crontab中设置上面的行时,什么也没发生.我究竟做错了什么?

解决方法

尝试将输出重定向到这样的文件

* * * * * /home/myfile.sh > output_file.txt

你会看到它正在发挥作用.

Cron作业不会输出到您正在使用的同一终端.

编辑

如果您使用crontab -e来安排作业,则使用的是用户特定的crontab.因此,您只能写入该用户的主目录(或他有权访问的其他目录).所以如果你修改你的cron作业:

* * * * * /home/myfile.sh > /home/<username>/output_file.txt

您将看到输出已写入用户主目录下的该文件.

如果要写入其他目录,我建议您在/ etc / crontab中使用系统范围的crontab

顺便说一句,您可能希望为cron作业启用日志记录以跟踪问题.您需要编辑/etc/rsyslog.conf或/etc/rsyslog.d/50-default.conf文件,并确保取消注释以下行,如果缺少则添加它:

cron.*                         /var/log/cron.log

然后重启rsyslog和cron:

sudo service rsyslog restart
sudo service cron restart

现在你看看你的命令是否由cron运行.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐