Chciałbym znaleźć adresy URL aktualnie otwartych kart Firefox za pomocą polecenia terminalu. Czy jest jakaś możliwość?
W ten sposób mógłbym zapisać je do pliku tekstowego i przejrzeć je później; i bezpieczne zasoby (często mam wiele otwartych kart). Wiem, że istnieje dodatek do Firefoksa, ale wygodniej byłoby napisać własny skrypt.
command-line
firefox
output
tabs
Aldorado
źródło
źródło
egrep
wzoru w potrzebne są podwójne cudzysłowyzsh
. Poza tym fajna wskazówka, dziękuję :)sessionstore.js
pliku, a następnie zastępuje wystąpień"
z\n
(nowa linia), a następnie filtruje tylko linie zawierającehttp
lubhttps
. Spróbuj wyświetlić plik, a dowiesz się, dlaczego potrzebuje nowych linii :)sessionstore.js
znajdują się nie tylko adresy otwartych kart. Istnieje wiele innych adresów.sessionstore.js
Firefox. Problem polega na tym, że ten plik notorycznie traci karty. Chcę tutaj równoległego rozwiązania, pytającego Firefoksa, jakie są jego zakładki. Jak w AppleScript.Informacje te są przechowywane w $ HOME / .mozilla / firefox / * default / sessionstore.js, a ich format to json.
Poniższy przykład został stworzony do współpracy z PHP. Przechodzi przez wszystkie okna Firefoksa, wszystkie zakładki i otrzymuje odpowiednią informację, która jest ostatnim wpisem wewnątrz „wpisów”. Gdybyśmy mogli użyć xpath do jego parsowania, byłoby to coś w stylu: / windows / * / tabs / last () / url (moja wiedza na temat xpath jest zardzewiała).
Możesz skopiować / wkleić ten kod do terminala:
EDYCJA : Z perlem (ale najpierw sudo apt-get install libjson-pp-perl):
źródło
sessionstore.js
Firefox. Problem polega na tym, że ten plik notorycznie traci karty. Chcę tutaj równoległego rozwiązania, pytającego Firefoksa, jakie są jego zakładki. Jak w AppleScript.recovery.js
pliku z 9 oknami i 840 kartami i działały jak urok! - tuż po potokiem wyjście do pliku tekstowego musiałem ustawić mapę znaków na ISO-8859-15 dla pliku o perl-metody ...!W ten sposób możesz wyodrębnić bieżący adres URL zakładki najbardziej aktywnej / przedniej w przeglądarce Firefox:
Objaśnienie: Najpierw znajduje indeks aktywnej karty,
$tindex
a następnie indeks aktywnego wpisu historii na tej karcie$eindex
.Co 15 sekund Firefox tworzy kopię zapasową
*default/sessionstore-backups/recovery.js
.źródło
Za pomocą bash znalazłem następującą odpowiedź. Wymaga tylko pakietu: jq. Można go zainstalować za pomocą: apt-get install jq
jq '.windows[].tabs[].entries[].url' ~/.mozilla/firefox/xkxwaf4z.default/sessionstore-backups/recovery.js
źródło