我正在尝试创建一个 cron 作业来在预定的时间打开网页。
我已经使用并附加了我的作业来编辑了我的 cron crontab -e
。我在这样的脚本中编写了我的作业:xdg-open (URL)
我将这个脚本保存在我的/home/flicker
目录中。
但是,当我编辑我的 cron( crontab -e
) 时,它将文件保存为/tmp/crontab.tIzXBv/crontab
。
保存后,显示成功安装新的 crontab。
我把文件脚本设为可执行,但仍然无法完成任务。我希望脚本在下午 14:30 运行,因此我将以下行添加到我的 crontab 中:
30 14 * * * /home/flicker/open-web.sh
这仍然无法正常工作,请帮忙。这是我的脚本:
#!/bin/bash
xdg-open https://www.google.com
答案1
要通过 cron 执行 bash 脚本,我将使用
30 14 * * * /bin/bash /home/flicker/open-web.sh >/dev/null 2>&1
通过 cron 和 curl 调用网页/URL
30 14 * * * /usr/bin/curl http://funkyname.com/blub.html >/dev/null 2>&1
更新:
在意识到您想要打开一个实际的浏览器而不是仅仅调用一个脚本之后,我想我理解了您的情况。
您无需使用 bash 脚本即可解决这个问题 - 而是将所有逻辑直接写入您的 crontab。
对于 Chrome:
30 14 * * * export DISPLAY=:0 && google-chrome --new-window http://www.randomurl.com
对于 Firefox:
30 14 * * * export DISPLAY=:0 && firefox --new-window http://www.randomurl.com
记住:
该--new-window
参数强制负责的浏览器打开一个新窗口,如果您不想这样,只需删除该部分。
避免噪声输出您可以选择>/dev/null 2>&1
在 cron 条目末尾添加。