Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何从crontab运行bash脚本并将输出发送到桌面通知_Linux_Bash_Cron_Cron Task_Raid - Fatal编程技术网

Linux 如何从crontab运行bash脚本并将输出发送到桌面通知

Linux 如何从crontab运行bash脚本并将输出发送到桌面通知,linux,bash,cron,cron-task,raid,Linux,Bash,Cron,Cron Task,Raid,每次引导到系统(Debian)并在桌面上以通知的形式发送输出时,我都会尝试获取RAID状态。 这与航站楼的预期效果一致: sudomdadm--detail/dev/md0 | grep“工作设备:”|读取输出时;不通知发送“$OUTPUT”;完成 但如果我运行指向脚本的crontab作业,它将不起作用: mdadm --detail /dev/md0 | grep 'Working Devices :' | while read OUTPUT; do notify-send "$OUTPUT"

每次引导到系统(Debian)并在桌面上以通知的形式发送输出时,我都会尝试获取RAID状态。 这与航站楼的预期效果一致:
sudomdadm--detail/dev/md0 | grep“工作设备:”|读取输出时;不通知发送“$OUTPUT”;完成

但如果我运行指向脚本的crontab作业,它将不起作用:

mdadm --detail /dev/md0 | grep 'Working Devices :' | while read OUTPUT; do notify-send "$OUTPUT"; done
该脚本设置为可执行脚本,并从crontab root运行,如下所示:

@reboot /PATH/scripth.sh
这也行不通:

* * * * * /PATH/scripth.sh
在以下情况下,不会生成日志:

* * * * * /PATH/scripth.sh > /PATH/crontab.log
在我的电脑中工作(更改用户名):


尝试在第一个字符串中添加脚本:导出显示=:“0.01”,将错误添加到日志:“****/PATS/Script,Stry/PATH/CRONTAB.log 2>1”,并检查CRONTAB.Logu可能会考虑接受该答案,如果它对您有用的话。
sudo mdadm --detail /dev/md0 | grep 'Working Devices :' | while read OUTPUT; do su - RealUserName -c "DISPLAY=':0.0' notify-send \"$OUTPUT\""; done