在Raspberry Pi上启动后运行shell脚本



我正在使用Raspberry Pi制作Web亭显示板,并且我想在加载后2分钟将一些钥匙笔触发送到浏览器窗口。脚本发送Web服务器的登录详细信息。

我有一个脚本,该脚本发送了从telnet控制台正常工作的击键:

#!/usr/bash
username="username"
password="password"
echo "Setting Display"
export DISPLAY=:0
echo "Sending Username"
for char in $(sed -E s/'(.)'/'1 '/g <<<"$username"); do
    xdotool key $char
done
xdotool key Tab
echo "Sending Password"
for char in $(sed -E s/'(.)'/'1 '/g <<<"$password"); do
    xdotool key $char
done
xdotool key Return
echo "Waiting 5 Seconds"
sleep 5
echo "Setting Remember Password"
xdotool key Tab
xdotool key Tab
xdotool key Return
echo "Finished"

我尝试将 bash /home/pi/logon.sh添加到rc.local文件 - 但它不会将击键发送到浏览器?

有人知道为什么会吗?正如我所说的 - 如果我运行脚本,请从telnet窗口工作,但是从启动运行时不起作用。

我在线上有 sleep 120,如果立即启动并等到浏览器加载直到加载 - 我知道脚本是从rc.local运行的,因为当我删除睡眠命令时,我从脚本。

有什么想法?

之所以不起作用的原因是,脚本需要作为用户pi运行。

我将RC.Local脚本中的代码更改为:su - pi -c "bash /home/pi/logon.sh &"

这使得脚本作为用户PI运行,并且使用AmperSand将脚本运行到rc.Loc.Loc.Loc的脚本中。(http://hacktux.com/bash/ampersand)

将其放入您的crontab

@reboot /path/to/script

使用

编辑它
#crontab -e

相关内容

  • 没有找到相关文章

最新更新