You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04下Cron无法执行.sh脚本触发notify-send通知的问题求助

Ubuntu 22.04下Cron无法执行.sh脚本触发notify-send通知的问题求助

大家好,我遇到一个头疼的问题想请教各位:

我写了个简单的脚本,用来检查电池百分比,然后通过notify-send弹出系统通知。这个脚本在终端手动执行的时候完全正常——不管是直接运行~/path-to-script/my_script.sh,还是用sh ~/path-to-script/my_script.sh、bash ~/path-to-my-script/my_script.sh来启动,通知都能正常弹出来。

但一旦用Cron定时执行这个脚本,就完全看不到通知了。

我的crontab -e配置是这样的:

*/1 * * * * /usr/bin/sh ~/path-to-my-script/my_script.sh

另外我还在sudo vim /etc/crontab里设置了环境变量:

SHELL=/usr/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

查看sudo service cron status的日志,能看到脚本确实被Cron执行了:

gen 28 17:35:01 my_user CRON[7863]: pam_unix(cron:session): session opened for user my_user(uid=1001) by (uid=0)
gen 28 17:35:01 my_user CRON[7864]: (my_user) CMD (/usr/bin/sh ~/path-to-my-script/my_script.sh)
gen 28 17:35:01 my_user CRON[7863]: (CRON) info (No MTA installed, discarding output)
gen 28 17:35:01 my_user CRON[7863]: pam_unix(cron:session): session closed for user my_user

我用的是Ubuntu 22.04系统,窗口管理器是i3。有没有大佬能帮我分析下问题出在哪?需要更多信息的话我随时补充~

备注:内容来源于stack exchange,提问作者overmach

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 10:54:50