带有 sudo 命令的脚本的 Cronjob 未运行 Ubuntu 16.04

带有 sudo 命令的脚本的 Cronjob 未运行 Ubuntu 16.04

我正在尝试获取一个脚本,其中包含必须以 sudo 身份执行的命令,以便使用 cron 每天运行。我已使用以下方式安装了 cron 作业

sudo crontab -e

但它似乎没有执行......

这是一个脚本,它每天会将 Plex 服务器上两个命令的输出发送到我的电子邮件中。当我手动运行它时(sudo ~/report.sh 确实有效),这是脚本:

#!/bin/bash

touch file.tmp /usr/local/lib/PlexConnect/PlexConnect_daemon.bash
status > file.tmp service plexmediaserver status >> file.tmp 
if [ -s    file.tmp ] 
then
       mailx -s "Plex daily report $(date)" [email protected] <file.tmp 
fi 
rm file.tmp

这是 cronjob 的一行:

34 15 * * * ~/report.sh

当我手动运行命令时,我会收到电子邮件。当我在 crontab 中使用它时,什么都没有...有什么想法吗?

答案1

您正在安装使用时使用 cronjob sudo crontab -e

~/report.sh将扩大到/root/report.sh

最好在你的 cronjob 中使用完整路径。

相关内容