【发布时间】:2018-02-20 00:53:01
【问题描述】:
我已经编写了一个脚本来作为我的 Ubuntu 发行版上的自动点击器。点击有效,但“睡眠”命令似乎无法正常工作。如果我取出点击并从终端运行它,那么睡眠会按预期工作。但是当我将它绑定到快捷方式并在玩游戏时运行它时,它不会休眠,它似乎只是不停地点击。
#!/bin/bash
counter=0 #number of iterations executed
loop_to=1800 #number of iterations to do
break_interval=10 #time to break, in seconds
click_interval=.5 #time between iterations, in seconds
break_at=15 #how many iterations before taking a break
while [ $counter -lt $loop_to ]; do
xdotool click 1
sleep $click_interval
echo $counter
let counter=counter+1
if [[ $(( $counter % $break_at )) == 0 ]]; then
sleep $break_interval
echo I slept
fi
done
最重要的睡眠是 break_interval ,因为那是让自动点击器暂停 x 时间。
【问题讨论】:
-
当您通过快捷方式运行该脚本时,您确定该脚本是由
bash运行的吗?[[是唯一依赖于bash的东西。 -
第一行的
#!之前似乎有空格。这意味着脚本不一定在bash下运行(这取决于哪个程序启动它)。 -
它没有使用 bash 运行。我相信出于多种原因,我无法访问绑定,只能访问我为朋友编写的脚本。他使用“sh”运行它,因此特定于 BASH 的东西导致它无法工作。感谢您的帮助!
标签: linux bash scripting automation xdotool