(原) Linux下的自动化工具xdotool

原创文章,请后转载,并注明出处。

在Ubuntu桌面系统下,有时候想偷个懒。毕竟都Ubuntu了,还不允许更自动一些吗。结合语音识别,就可以懒到家了。虽说Python是把瑞士军刀,但不编程,用点小工具也是不错的选择。只是它缺少一些图形识别功能,否则还真是Linux下的按键精灵。

安装还是如此简单:sudo apt install xdotool

老家:https://www.semicomplete.com/projects/xdotool/

开源:https://github.com/jordansissel/xdotool

然后是一些功能:

xdotool key [key name]
xdotool key alt+Tab
xdotool type ''
xdotool search --name [window name] key [key name] 查找窗口并按键
xdotool mousemove x y
xdotool mousemove x y click 1  1左键 2滚轮 3右键 4向上滚 5向下滚
xdotool search --title "..."
xdotool key Return 模拟回车键
xdotool keydown/keyup super 按下Win键不放
xdotool key Super_L 左Win
watch -n 10 xdotool key Return 搭配watch使用,实现循环10秒敲击一次回车
xdotool search "Firefox"  获取窗口名称
xdotool getwindowname 39845889 在以上指令列出的ID中获取容器名称
xdotool getactivewindow 获取当前激活的窗口
xdotool windowminimize 最小化窗口
xdotool windowminimize $(xdotool getactivewindow) 最小化当前窗口
xdotool key ctrl+l BackSpace 点击ctrl+l,然后是BackSpace键
xdotool search --name gdb key ctrl+c 在窗口名为gdb上点击ctrl+c
xdotool mousemove_relative 10 10 鼠标相对移动
xdotool mousemove_relative --sync 10 10 异步鼠标相对移动
xdotool click -repeat 1 3  鼠标右键点击1次
xdotool mousedown/mouseup
xdotool getmouselocation 获取鼠标位置
xdotool getmouselocation --shell 获取鼠标位置(便于获取数据)
1 eval $(xdotool getmouselocation --shell)
2 echo $X,$Y
即可获得X,Y位置
xdotool getactivewindow windowmove 10 10 移动当前窗口位置

相关文章