ある種のコマンドを使用してそのようなURLを取得する方法はありますか?
セッションに関する情報を含むファイルはほとんどありません。
現在のセッションに関する情報を含む~/.mozilla/firefox/*.default/sessionstore-backups/recovery.js
には、閉じたタブと前のセッションに関する情報も含まれます。 Firefoxは15秒ごとにこのファイルにバックアップを作成します。このファイルは、Firefoxが閉じられている場合は使用できません。
~/.mozilla/firefox/*.default/sessionstore.js
には、Firefoxブラウザーが閉じられたときの最後のセッションに関する情報が含まれます。このファイルは、Firefoxが開いているときには使用できません。
前のセッションに関する情報を含む~/.mozilla/firefox/*.default/sessionstore-backups/previous.js
。
recovery.js
のコンテンツの分析は、各タブについて、現在のURLのエントリのみが文字列attributes
を含むことを示しています。
1.A。現在のセッションから開いているタブのすべてのURLを取得する場合は、次のコマンドを使用できます。
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js | \
sed "s/\\_closedTabs.*//" | \
sed "s/{/\n{/g" | \
egrep -o 'url.*attributes' | \
cut -d\" -f3
* copy
/paste
すべての行を端末ウィンドウにまとめて押してください Enter。
どこ:
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js
は、このファイルの内容を出力します。sed "s/\\_closedTabs.*//"
は、文字列_closedTabs
の後のすべてを削除します。sed "s/{/\n{/g" | \
は、各{
の前に改行を入れます。egrep -o 'url.*attributes'
は、url
で始まりattributes
で終わる行の部分のみをフィルタリングします。 -o
オプションを使用しない場合、文字列を含む行全体がフィルターされます。cut -d\" -f3
は"
を区切り文字として使用し、3番目の列のみをフィルターします。私の場合、コマンドの出力は次のとおりです。
https://askubuntu.com/
https://www.mozilla.org/en-US/
1.B。現在のセッションと前のセッションのデータを一度に取得したい場合は、これを使用できます:
printf "\n# CurrentSession:\n"; \
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js | \
sed "s/\\_closedTabs/\{\"url\":\"# ClosedTabs:\"attributes/g" | \
sed "s/\\lastSessionState/\{\"url\":\"# LastSession:\"attributes/" | \
sed "s/{/\n{/g" | \
egrep -o 'url":"*.*attributes*' | \
cut -d\" -f3 | \
sed "s/#/\n#/" \
; echo
どこ:
printf "\n# CurrentSession:\n";
は、2つの改行の間に# CurrentSession:
を出力します。sed "s/\\_closedTabs/\{\"url\":\"# ClosedTabs:\"attributes/g"
は、「ファイル」全体で文字列_closedTabs
を"url":"# ClosedTabs:"attributes
に置き換えます(オプションg
)。sed "s/\\lastSessionState/\{\"url\":\"# LastSession:\"attributes/"
はlastSessionState
を"url":"# LastSession:"attributes
に置き換えます。sed "s/#/\n#/"
は、各#
の前に改行を置きます。; echo
は、下部に空白行を追加します。私の場合、コマンドの出力は次のとおりです。
# CurrentSession:
https://askubuntu.com/
https://www.mozilla.org/en-US/
# ClosedTabs:
https://www.yahoo.com/
# LastSession:
https://askubuntu.com/
https://www.abv.bg/
# ClosedTabs:
https://www.google.com/gmail/about/
https://www.yahoo.com/
2.A。履歴を取得したい場合は、以下を使用できます。
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js | sed "s/\\_closedTabs.*//" | sed "s/{/\n{/g" | egrep 'url":"http*' | cut -d\" -f4
私の場合、コマンドの出力は次のとおりです。
https://askubuntu.com/
https://www.google.bg/search?client=ubuntu&channel=fs&q=firefox&ie=utf-8&oe=utf-8&gfe_rd=cr&ei=pTKyWIitGqTs8wewj4KgDQ
https://www.mozilla.org/bg/firefox/new/
https://www.mozilla.org/en-US/
2.B。各タブのデータ間にセパレーターを置くことができます:
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js | \
sed "s/\\_closedTabs.*//" | \
sed "s/{/\n{/g" | \
sed "s/entries/url\":\"# TAB:/g" | \
egrep 'url":"*' | \
cut -d\" -f4 | \
sed "s/#/\n#/"
私の場合、コマンドの出力は次のとおりです。
# TAB:
about:startpage
https://askubuntu.com/
# TAB:
https://www.google.bg/search?client=ubuntu&channel=fs&q=firefox&ie=utf-8&oe=utf-8&gfe_rd=cr&ei=pTKyWIitGqTs8wewj4KgDQ
https://www.mozilla.org/bg/firefox/new/
https://www.mozilla.org/en-US/
3。1.B.および2.B.一緒:
printf "\n# CurrentSession:\n"; \
cat $HOME/.mozilla/firefox/*.default/sessionstore-backups/recovery.js | \
sed "s/\\_closedTabs/\{\"url\":\"# ClosedTabs:/g" | \
sed "s/\\lastSessionState/\{\"url\":\"# LastSession:/" | \
sed "s/entries/url\":\"# TAB:/g" | \
sed "s/{/\n{/g" | \
egrep 'url":"*' | \
cut -d\" -f4 | \
sed "s/#/\n#/" \
; echo
私の場合、コマンドの出力は次のとおりです。
# CurrentSession:
# TAB:
https://Host.bg/
https://admin.Host.bg/
# TAB:
https://www.mediawiki.org/wiki/MediaWiki
# TAB:
https://en.wikipedia.org/wiki/Main_Page
# ClosedTabs:
# TAB:
about:startpage
https://www.yahoo.com/
# LastSession:
# TAB:
about:startpage
https://askubuntu.com/
# ClosedTabs:
# TAB:
https://www.mozilla.org/en-US/
https://www.google.com/gmail/about/
Firefoxが閉じられると、最後のセッションのデータを取得できます。アプローチは上記で説明したものと同じですが、recovery.js
の代わりにsessionstore.js
(またはprevious.js
)を使用する必要があります。
cat $HOME/.mozilla/firefox/*.default/sessionstore.js \
...
ドラッグ/ドロップ
ドラッグアンドドロップします。アイコンからアドレスフィールドの左にドラッグします。ほとんどのブラウザでは、 i アイコンの。
コピー/貼り付け
コピーアンドペーストを使用することもできます。アドレスフィールドからテキストをコピーします。端末に貼り付けます。
受け入れられた答えは今は機能しません。firefoxはそのファイルを削除しました。
だからここに私の解決策があります:
方法1:xdotoolなどのキーボードオートメーションツールを使用してキーを送信し、URLをクリップボードにコピーします。
この方法にはいくつかの欠点があります。つまり、カーソルの現在のフォーカスを変更します(最初にCtrl-Lを使用してアドレスバーに移動する必要があります)
方法2:Grease Monkeyを使用して、キーF12をGM_setClipboard(document.location)にバインドします。キーボードオートメーションツールを使用して、キーF12をFirefoxに送信します。クリップボードを見て保存します(クリップボードをバックアップおよび復元することもできます)。