Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox从命令行刷新当前选项卡_Firefox_Shell_Automation - Fatal编程技术网

Firefox从命令行刷新当前选项卡

Firefox从命令行刷新当前选项卡,firefox,shell,automation,Firefox,Shell,Automation,我想从命令行触发Firefox上的选项卡刷新。我正在开发一个web应用程序,在应用程序编译后刷新。我从IDE中的命令触发编译。它不是固定的url,也不能从IDE中打开的文件派生。因此,当前打开的url将显示在活动选项卡中 问题是,我在一个没有Xinerama支持的双头框中,这意味着我不能将alt+tab切换到Firefox,而是必须将鼠标移动到另一个屏幕,单击Firefox,然后按Ctrl+R。这不可能是正确的 我尝试了一些bookmarklet的东西,比如DISPLAY=':0.1“firef

我想从命令行触发Firefox上的选项卡刷新。我正在开发一个web应用程序,在应用程序编译后刷新。我从IDE中的命令触发编译。它不是固定的url,也不能从IDE中打开的文件派生。因此,当前打开的url将显示在活动选项卡中

问题是,我在一个没有Xinerama支持的双头框中,这意味着我不能将alt+tab切换到Firefox,而是必须将鼠标移动到另一个屏幕,单击Firefox,然后按Ctrl+R。这不可能是正确的

我尝试了一些bookmarklet的东西,比如
DISPLAY=':0.1“firefox-remote”openurl(javascript:alert(1);)'
,但FF不会运行它


有什么想法吗?

您可以使用xdool实现自动化。在Ubuntu上安装

sudo aptitude install xdotool
然后,您可以搜索窗口并发送按键或鼠标事件,有关完整文档,请参阅
manxdool
。在开发过程中,我在Ubuntu 16.04 LTS上使用以下脚本:

WID=`xdotool search --name "Mozilla Firefox" | head -1`
xdotool windowactivate $WID
xdotool key F5
注意:在旧版本中,例如Ubuntu 14.04,标志是
--title
,而不是
--name


另请参见。

IOPS中有一个名为IMACROS的漂亮工具。
可以为浏览器编写宏,然后从脚本调用宏

对于OS X,您可以使用以下几行applescript:

activate application "Firefox"
tell application "System Events" to keystroke "r" using command down

这里有一个更新版本的@geekQ脚本,它将把焦点返回到以前的程序(不过,firefox窗口仍将被拉到顶部)


也许你可以通过一个自定义的命令行处理程序扩展来实现。现在已经有这样的东西了吗?或者我必须做一个吗?+1.works,尽管在使用
--title
I get:
时切换到firefox窗口有一个坏的副作用:
此标志已被弃用。假设您的意思是--name(窗口名)。
@ukaszGruner请参阅我的答案,自动切换回上一个窗口。对于最初的问题,如果Firefox被拉到顶部,则无所谓,只要
$CURRENT\u WID
保持焦点。非常好,谢谢!太棒了,我很高兴这个小脚本对你也有帮助!
#!/bin/bash

CURRENT_WID=$(xdotool getwindowfocus)

WID=$(xdotool search --name "Mozilla Firefox")
xdotool windowactivate $WID
xdotool key F5

xdotool windowactivate $CURRENT_WID