我输入
crontab -e
我的crontab看起来像
*/1 * * * * /home/sara/Desktop/kioskscripts/reloadpage.sh >> /home/sara/Desktop/kioskscripts/logfile.log
logfile在/ kioskscripts中创建,但仍为空。
reloadpage.sh看起来像这样
#!/bin/bash
sleep 5
/usr/bin/xdotool key F5
sh reloadpage.sh
按预期工作,并模拟执行后5秒按下f5。
答案 0 :(得分:2)
cron
执行的程序没有活动窗口,因此您需要使用--window
选项明确指定要将击键发送到哪个窗口。
您可以使用xdotool getactivewindow
获取当前活动窗口的窗口ID,然后在xdotool
命令中使用该编号。或者,您可以使用xdotool search
和各种选项来查找要引导击键的窗口。阅读man xdotool
了解各种搜索选项。 (您可以在一个命令中执行此操作:xdotool search --name Foo key F5
会将F5发送到名称中包含FOO
的窗口。)
但是只有当指示的窗口接受事件时才会有效,而许多窗口则不会。