Подтвердить что ты не робот

Firefox обновляет текущую вкладку из командной строки

Я хотел бы вызвать обновление вкладки в Firefox из командной строки. Я работаю над веб-приложением, и обновление идет после компиляции приложения. Я запускаю компиляцию из команды в моей среде IDE. Это не фиксированный URL-адрес, и он не может быть получен из открытого файла в среде IDE. Таким образом, текущий открытый URL-адрес на активной вкладке.

Дело в том, что я в двуглавой коробке без поддержки Xinerama, а это значит, что я не могу добавить + вкладку в Firefox, вместо этого я должен переместить мышь на другой экран, нажать на Firefox, а затем Ctrl + Р. Это не может быть правильно.

Я пробовал какой-то материал букмарклета, например DISPLAY=':0.1' firefox -remote 'openurl(javascript:alert(1);)', но FF не запускал его.

Любые идеи?

4b9b3361

Ответ 1

Здесь обновленная версия сценария @geekQ, которая вернет фокус предыдущей программе (однако окно firefox все равно будет перемещено наверх).

#!/bin/bash

CURRENT_WID=$(xdotool getwindowfocus)

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

xdotool windowactivate $CURRENT_WID

Ответ 2

Вы можете использовать xdotool для автоматизации. Установить в Ubuntu с помощью

sudo aptitude install xdotool

Затем вы можете искать окна и отправлять ключи или события мыши, см. man xdotool для полной документации. Во время разработки я использую следующий скрипт на Ubuntu 16.04 LTS:

WID='xdotool search --name "Mozilla Firefox" | head -1'
xdotool windowactivate $WID
xdotool key F5

Примечание. В более старых версиях, например, В Ubuntu 14.04 флаг --title вместо --name.

Смотрите также сайт проекта xdotool.

Ответ 3

Я ищу то же самое, но ничего не нашел. Но теперь я использую надстройку Firefox, которая перезагружает страницу при изменении настроенного локального файла. Он называется Автообновление.

Ответ 4

В IOPUS есть отличный инструмент под названием IMACROS. Вы можете писать макросы для браузера, а затем вызывать макросы из script.

Ответ 5

Для OS X вы можете сделать это с помощью этих нескольких строк applescript:

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