xdotool
- X11自动化工具
xdotool
允许你模拟键盘输入和鼠标活动,移动和调整窗口大小等。它通过使用X11的XTEST扩展和其他Xlib函数来实现这些功能。
⚠ 注意:如果你使用的是Wayland,请注意此软件将无法正常工作。更多详情请参见下方的"Wayland"部分。
使用xdotool,你可以搜索窗口并移动、调整大小、隐藏和修改窗口属性,如标题。如果你的窗口管理器支持,你可以使用xdotool切换桌面、在桌面间移动窗口,以及更改桌面数量。
这个仓库中还包含libxdo
,一个用于实现相同功能的C库。
你可以在xdotool.pod
中查看用户文档。
安装
你可以在你的发行版包管理中找到xdotool:
- Debian和Ubuntu:
apt-get install xdotool
- Fedora:
dnf install xdotool
- FreeBSD:
pkg install xdotool
- macOS:
brew install xdotool
或sudo port install xdotool
- OpenSUSE:
zypper install xdotool
基本用法
输入文字
在终端中运行:
xdotool type "Hello world"
发送按键
xdotool key ctrl+l
上述命令将模拟按下Ctrl键,然后按"L"键,最后释放两个键。这对于模拟快捷键很有用。
关闭窗口
xdotool selectwindow windowclose
这将关闭你点击的第一个窗口。
酷炫技巧
打开Firefox并聚焦到地址栏
xdotool search "Mozilla Firefox" windowactivate --sync key --clearmodifiers ctrl+l
调整所有可见的gnome-terminal窗口大小
xdotool search --onlyvisible --classname "gnome-terminal" windowsize %@ 500 500
Wayland
Wayland是一个与X11(你可能知道它为Xorg或X)非常不同的图形系统。Wayland有一些X11兼容性,但就xdotool而言,许多功能无法正常工作。输入、窗口搜索以及xdotool的许多其他功能都不起作用,目前还不清楚它们是否能够正常工作。
如果你使用Wayland,以下一些工具可能会对你有所帮助:
构建/编译
先决条件:
- X11库:xlib、xtst、xi、xkbcommon、xinerama
如何编译和安装:
- 编译:make
- 安装:make install
- 卸载:make uninstall
你可能需要设置'PREFIX'为你想要安装的位置。 默认PREFIX为/usr/local
对于打包者,还支持使用DESTDIR进行分阶段安装。
另外,请参阅手册页,你可以通过运行以下命令生成:
make showman
注意:在'make install'过程中会安装手册页。