如何通过特定的 URL 向 Firefox 窗口发送命令?(xdotool)

如何通过特定的 URL 向 Firefox 窗口发送命令?(xdotool)

我有一个特殊的需求,当我在 Firefox 窗口上使用 Evernote 写笔记时,我需要在另一个 Firefox 窗口上发回视频课程。

视频课程可以在 YouTube 或其他使用 Wistia 的网站上观看。

我设法通过 xdotool 和 xbindkeys 发送命令,但只能在打开 Firefox 窗口的情况下发送,如果我有另一个打开的 Firefox 窗口,那么打开两个 Firefox 窗口后,该命令不起作用。

基本上我必须使用 xdotool 将命令发送到 Firefox 窗口在打开的标签页中输入特定的网址,例如一个标签www.youtube.com

#!/bin/bash
xdotool search --class firefox key --window %@ Left

可以这样做吗?我该怎么做?

编辑:
我尝试了两种解决方案,但它们并非 100% 有效,实际上,命令被发送到活动的 Firefox 窗口,或者如果我从控制台运行脚本,则发送到最后一个激活的窗口。

解决方案 1:

pids=$(xdotool search --class "firefox")
for pid in $pids; do
    name=$(xdotool getwindowname $pid)
    if [[ $name == *"finestradellevideolezioni"* ]]; then
        echo $name
        xdotool key --window $pid Left
    fi
done

解决方案 2:

xdotool search --name "finestradellevideolezioni" key Left

我更改了带有视频课程的 Firefox 窗口的标题,非常独特。
此外,当我从控制台运行 Solution1 脚本时,输出是准确的,打印的是确切窗口的标题,即标题已修改的窗口。

相关内容