http://i.scwy.net/it/2019/113019-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 移动当前窗口位置