Linux工具--xdotool
xdotool 使用笔记
简介
xdotool 是一个用于模拟键盘输入和鼠标事件的命令行工具。它可以在 X11 系统上自动化许多任务,例如自动点击、键盘输入等。该工具特别适用于自动化测试、脚本编写和提高工作效率。
安装
在大多数基于 Debian 的系统(如 Ubuntu)上,可以使用以下命令安装 xdotool:
1 | sudo apt-get install xdotool |
在基于 Red Hat 的系统(如 Fedora)上,可以使用:
1 | sudo dnf install xdotool |
基本使用方法
模拟键盘输入
使用 xdotool 来模拟键盘输入:
1 | xdotool type 'Hello, World!' |
模拟按键
模拟按下和释放一个按键:
1 | xdotool key Return |
模拟按住一个键:
1 | xdotool keydown Ctrl |
模拟释放一个键:
1 | xdotool keyup Ctrl |
模拟鼠标操作
移动鼠标
将鼠标移动到屏幕上的特定位置:
1 | xdotool mousemove 100 200 |
相对当前位置移动鼠标:
1 | xdotool mousemove_relative 100 100 |
点击鼠标
模拟鼠标点击:
1 | xdotool click 1 |
其中,1 代表左键,2 代表中键,3 代表右键。
模拟双击:
1 | xdotool click --repeat 2 1 |
按住和释放鼠标按钮
模拟按下鼠标按钮:
1 | xdotool mousedown 1 |
模拟释放鼠标按钮:
1 | xdotool mouseup 1 |
获取窗口信息
获取当前鼠标的位置:
1 | xdotool getmouselocation |
获取窗口 ID
获取当前活动窗口的 ID:
1 | xdotool getactivewindow |
获取鼠标下窗口的 ID:
1 | xdotool getwindowfocus |
切换窗口
切换到特定窗口:
1 | xdotool windowactivate <window_id> |
关闭窗口:
1 | xdotool windowclose <window_id> |
组合操作
xdotool 允许你组合多个操作来实现复杂的自动化任务。例如,打开一个终端,输入命令并执行:
1 | xdotool key super+Return |
查看帮助信息
xdotool 提供了 –help 选项,可以查看帮助信息:
1 | xdotool --help 或者 xdotool -h |
常见应用场景
自动化测试:模拟用户操作进行应用测试。
重复性任务:自动化执行频繁的日常任务。
演示和教学:制作演示或教程视频时,自动执行命令或操作。
注意事项
xdotool 依赖于 X11 系统,因此在 Wayland 上可能无法正常工作。
执行模拟操作时,请确保目标窗口处于活动状态或已聚焦,否则操作可能不会生效。