0

我正在运行 Ubuntu 10.04 LTS。我有 4 个 Gnome 风格的工作区——一次只能在屏幕上看到 4 个工作区中的一个。

作为一名程序员,我需要定期从 bash 脚本启动嵌入式浏览器。

我需要的主要功能是浏览器必须在与调用它的 bash 脚本相同的工作区中打开,即使浏览器的另一个实例正在另一个(非活动)工作区中运行。

案例 1:没有实例在运行

  1. 从脚本中以 URL 作为唯一参数运行 Opera 浏览器会显示 Speed-Dial 选项卡,以及包含我的内容的第二个选项卡。 不良行为
  2. 更糟糕的是,如果我在上述情况下添加 -newwindow,则会生成两个窗口,一个带有快速拨号选项卡,另一个带有我的内容。不良行为
  3. 从脚本运行 Opera 浏览器,将 URL 作为参数以及 -activetab 将我的内容显示为当前工作区中浏览器的唯一选项卡。 这是我想要的行为!
  4. 如果我同时指定 -newwindow 和 -activetab,在上述情况下,似乎会忽略 -activetab。参考行为

案例 2:另一个实例正在运行

  1. 从没有 URL 作为唯一参数的脚本运行 Opera 浏览器会输出“激活的运行实例”,并且网页会在该浏览器中打开。不良行为
  2. 使用 -newwindow 选项运行 Opera 浏览器会在我当前的工作区中启动一个新窗口,其中我的内容作为浏览器的唯一选项卡。 这是我想要的行为。
  3. 从脚本运行 Opera 浏览器并将 URL 作为参数以及 -activetab 显示替换该工作区中的内容,并在脚本窗口中仅显示“激活的运行实例”。不良行为
  4. 如果我同时指定 -newwindow 和 -activetab,在上述情况下,似乎会忽略 -newwindow。不一致的行为
4

1 回答 1

0

我接受的解决方案是:

  1. 始终提供 URL 和 -newwindow 作为唯一参数。
  2. 启动窗口后,使用 wmctrl 删除不需要的“快速拨号”浏览器窗口(如果已创建),方法是发出:
        wmctrl -c "Speed Dial - Opera"
于 2012-05-18T12:34:52.020 回答