问题标签 [xdotool]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 使用 xdotool 刷新桌面
您好我正在尝试刷新我的桌面,使用 xdotool 模拟“F5”/“ctrl+R”按键。
我试过了,xdotool key F5
但我得到了
并按 Enter 后:
然后我试过了
得到那个id,然后尝试:
它没有刷新我的页面。
问题:我可以做些什么来刷新我的桌面?顺便说一句,我使用的是 Ubuntu 16.04。谢谢
python - 发送命令以运行 Python 脚本
我有一个运行 openCV 来播放视频的 Python 脚本。如果用户按下键盘上的“c”按钮,OpenCV 将保存用户单击“c”按钮时显示的帧。
问题是,我想通过 bash 脚本自动保存它——这意味着,在某些时候,我希望我的 bash 脚本“模拟”被按下的“c”按钮,以便它可以捕捉到那个快照。
我的(肯定是非常非 Pythonic)的方法是制作一个使用xdotool
. 这是它的样子:
它找到pid
python 文件,找到窗口 ID,并模拟按下的“c”按钮。
这不起作用。可能是因为我的 bash 是错误的......
无论如何,这样做的pythonic方式是什么?(不处理套接字......请......)。或者,如果您能告诉我我的 bash 脚本出了什么问题,那也太好了。但我真的只是想知道以python方式执行此操作的正确方法。我什至不需要按下按钮,可以是我发送的任何东西。
谢谢
linux - xdotool 类型需要很长时间并导致整个桌面冻结
我过去一直在使用xdotool type
只是在快捷方式上使用xdotool type '¯\_(ツ)_/¯'
. 这可行,但总是需要相当长的时间,并导致整个桌面冻结(完全,不仅仅是输入)几秒钟。不过并没有打扰到我。
现在我需要一种方法来从文件中读取内容,对其进行操作,然后将其输入。我想使用 xdotool 来完成这样的任务:
发布了mycommand
大约 20 行 URL。一旦我运行了脚本,我的桌面(gnome3.26,archlinux)就完全冻结了。我通过 SSH 连接到机器杀死了 bash 进程(成功),但这对冻结状态没有任何作用。十分钟后它再次运行,命令确实运行了(如,xdotool 按预期正确键入了所有内容)但我不得不重新启动 X 服务器,因为我的鼠标不再工作了。
我需要一种自动键入的方法,xdotool type
但没有这种冻结行为。最好的情况是一个工具,它几乎可以立即输入我通过的整个文本。我想到了一个解决方案xclip
,然后只模拟粘贴和输入的按键,但我认为必须有一个更好的解决方案。
这个问题xdotool
对我来说已经存在了大约两年(一直在 gnome + archlinux 上),但直到现在我才需要它只是耸耸肩。我猜这不仅仅是我使用的版本中的错误。只是为了完整性:
$ xdotool --version
xdotool version 3.20160805.1
php - Linux Ubuntu 16.04 通过 http 请求远程点击
有没有什么方法可以执行远程点击,比如说 Android 设备,到当前的 linux 会话与简单的 HTTP 请求?
到目前为止,我已经设法让 Apache 与 PHP7 一起工作,并且 xdotool 通过在 Ubuntu 16.04 VM 上调用 shell 脚本来执行左键单击。问题是该脚本仅在从当前会话中调用时才有效,但如果从 php 脚本中调用则无效。
我的猜测是 Apache 服务器是由不同的用户在不同的会话中运行的?
我的项目的目标是创建一个 Android 应用程序,它将 HTTP 请求发送到 Linux 服务器,PHP 将在该服务器上处理请求并触发执行鼠标左键单击的 shell 脚本。除此之外,我很想从服务器获得简单的响应,它会告诉我点击是否成功。
/var/www/html 文件夹
click.php
文件权限:-rw-r--r-- 1 root root 69(日期)click.php
./scripts/click.sh
文件权限:-rwxrwxr-x 1 root root 28(日期)click.php
#!/bin/bash
xdotool click 1
keyboard - 映射两个以上键的键序列
我创建了一个脚本,它使用 xdotool 在特定的 firefox 容器中打开新选项卡。我需要映射三个键,例如ctrl+y+p打开个人容器,ctrl+y+b打开银行容器等等。我找不到可以让您映射两个以上键的工具。
有没有像我描述的那样?
非常感谢。
编辑:对于任何寻找答案的人,我找到了一种方法。我使用i3,所以我只是添加了一个通过按前两个键触发的模式,然后将“b”映射到命令+转义(退出模式)。
linux - 键+鼠标同时单击(xdotool)
是否可以在linux中同时模拟击键("N"
)和鼠标点击?
我xdotool
在 fedora linux 发行版上使用
我没有发现任何与这种可能性有关的东西
稍后编辑:
我找到了以下解决方法。我发布它是因为有人可能有类似的问题。
即使没有在单击的同时按下该键,您也可以使用:
c++ - 在 fork() 和 execl() 调用后无法识别 C++ 命令 (Linux)
我正在尝试创建一个可以打开终端浏览器并浏览网站的程序。在调用子进程之前它工作正常。出现以下错误
“xdotool:未知命令:搜索 --onlyvisible --name 终端窗口激活 keydown Down”
我已经在一个单独的终端中测试了该命令,它确实有效,但在我的代码中没有得到识别。我觉得这可能与 execl 没有返回到 main 的事实有关,但我是编程新手,所以我不确定。
这是代码
linux - 绑定到快捷键的 xdotool 命令不起作用
我非常喜欢 VIM,我想在任何地方都使用它的键绑定。有很多 IDE 插件可以模拟这个,但我想要更多,也许是 Minecraft 中的 VIM 键绑定?:D 或 VIM 键绑定无处不在,无需下载任何插件。
我注意到每个编辑器都实现了这个键:Home, End, Ctrl+ End, Ctrl+ Left, Ctrl+Backspace等等......
我将这些键用作构建块,并为 i3wm 提出了以下配置:
该代码段有效,但不是我想要的方式。如果我不使用--release
代码根本不起作用,因为这个键不重复,所以不可能按住J并向下滚动。
这似乎是一个窗口焦点问题。出于某种原因,当我按下键绑定时,窗口会失去焦点几毫秒,然后再次成为焦点。这在 Firefox 的 Url Bar 中最为明显。我发现这个问题是几年前提出的,它建议在执行之前添加一秒钟的延迟xdotool
,我可以使用它,但第二次会产生巨大的输入延迟。
我也尝试过其他窗口管理器和热键守护程序sxhkb
,但一切都完全相同......
bash - 如何通过脚本或 Shell 命令将焦点切换到 Gnome 终端选项卡
我目前正在编写一个脚本来在 gnome-terminal 中打开几个选项卡,并设置它们的标题。我可以打开多个选项卡,但我需要将焦点更改为这些选项卡(以编程方式),以便从我的脚本中设置它们的标题。
我交替使用 zsh 和 bash,所以任何 bash 命令都应该可以正常工作。我开始熟悉xdotool
and wmctrl
,但不确定将焦点切换到打开选项卡的命令组合。
我可以使用哪些命令从 gnome-terminal CLI “切换到下一个打开的选项卡”或“切换到选项卡N ”?
debugging - 在 gstreamer 中创建点文件时是否包含日志?
我试图了解如何从 gstreamer 日志创建点文件。当我生成 gstreamer 日志时,GST_DEBUG=4
它会生成大量日志。同时当我查看gstreamer生成的dot文件时,它有关于管道创建的具体信息。不是创建管道后的日志信息,如播放暂停搜索...
我有一些问题:
- 与完整的日志文件相比,点文件中将包含哪些信息?
- 如果点文件中没有包含所有日志,那么我们如何使用 dotgraph(使用 graphviz 之类的工具)调试这些日志信息?