@ user25656: Wenn Sie schnell sein möchten, verwenden Sie die Befehlszeile. Sie können daraus Statistiken erstellen. Sie können mit regulären Ausdrücken suchen (z. B. mit grep), Sie können Diagramme erstellen usw. Alles, was in Firefox nicht möglich ist. Zumindest nicht ohne ein Addon zu hacken.
Erik
Antworten:
27
Diese Seite beschreibt, welche benutzerspezifischen Informationen von Firefox wo gespeichert werden. (Und genau das sagt Mozillas Hilfe zum Anzeigen von .sqlite-Dateien aus.)
Es listet drei Arten von Geschichte auf:
Lesezeichen und Browserverlauf: Die Datei places.sqlite enthält alle Ihre Firefox-Lesezeichen und die Liste aller von Ihnen besuchten Websites ...
Verlauf der automatischen Vervollständigung : In der Datei formhistory.sqlite wird gespeichert, wonach Sie in der Firefox-Suchleiste gesucht haben und welche Informationen Sie in Formulare auf Websites eingegeben haben.
Download-Verlauf: Die downloads.sqlite- Datei merkt sich, was Sie heruntergeladen haben. ...
Wie Sie sehen, sind alle drei Historien keine einfachen Textdateien, sondern Datenbankdateien im sqliteFormat.
Eine Möglichkeit zum Anzeigen von .sqliteDateien ist die Verwendung von sqlite3( sudo apt-get install sqlite3).
Öffnen Sie ein Terminal und cdden Ordner, in dem sich das befindet, was Sie anzeigen möchten. In meinem Fall ist das so ~/.mozilla/firefox/w4wcp85s.default.
ls *.sqlite listet die SQLite-Dateien auf.
Führen Sie aus sqlite3 places.sqlite(wenn places.sqlite das ist, was Sie anzeigen möchten). Sie werden so etwas sehen:
$ cd ~/.mozilla/firefox/w4wcp85s.default
$ sqlite3 places.sqlite
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
Nun gibt es mehrere Möglichkeiten. (Mit Ctrl+ Dbeenden Sie sqlite3).
Wenn ich zum Beispiel tippe .tablesund drücke, Enterbekomme ich:
Geben Sie zum Anzeigen des Inhalts SELECT * FROM table_name;(wobei table_nameder Name der Tabelle ist, die Sie anzeigen möchten; beachten Sie die ;) ein und drücken Sie Enter. Es ist sehr wahrscheinlich, dass die Ausgabe nicht verständlich ist, aber das liegt nicht an sqlite3.
Schauen Sie sich an (wenn Sie die Erweiterung Stylish verwenden ) , um ein Beispiel zu zeigen, das eine anständige Ausgabe liefert :stylish.sqlite
$ ~/.mozilla/firefox/w4wcp85s.default $ sqlite3 stylish.sqlite
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
style_meta styles
sqlite> SELECT * FROM styles;
6||||YouTube|/* AGENT_SHEET */
/* ▓▓ NIGHTSHIFT - eye care: ▓▓
▓▓_http://userstyles.org/styles/18192/nightshift-eye-care_▓▓ */
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document regexp("https?://www.youtube.com/.*") {
body,html {min-height: 100%!important; }
html, body{background-color:#111!important}
Sie können alles in nur einem nicht interaktiven Befehl ausführen, wenn Sie genau wissen, was Sie wollen. Lesen Sie das Befehlszeilentool sqlite3, um mehr über sqlite3 zu erfahren.
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" > ~/Desktop/filename.txt
wird das Notwendige in dem gegebenen Beispiel tun und teeSie können die Ausgabe auch auf dem Bildschirm sehen:
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" | tee ~/Desktop/filename.txt
Wenn Sie alle Datenbanken und alle Tabellen in diesen Datenbanken nach einem bestimmten Begriff durchsuchen möchten (z. B. stackoverflow.com ), können Sie Folgendes tun (als Einzeiler ): for DATABASE in *sqlite; do echo -e "********\n$DATABASE\n********";for TABLE in $(sqlite3 $DATABASE ".tables"); do echo -e "========\n$TABLE\n========"; sqlite3 $DATABASE "select * from $TABLE;"; done; done | grep 'stackoverflow\.com'Oder anstatt die Ergebnisse zu grepverwenden lessund darin zu suchen.
Erik
Etwas wie dieses wird sich am Ende von mir ~/.bash_historyabzeichnen, daher habe ich ein Python (3.5+) -Skript mit der Click- Bibliothek geschrieben, um das grundlegende Auflisten, Sortieren und Filtern viel einfacher zu machen. Sie können es von diesem Gist bekommen . Bitte hinterlassen Sie dort Kommentare, wenn Sie auf Probleme stoßen.
TheDudeAbides
6
Hier ist, was ich am Ende hatte (dank vorheriger Antworten):
db=$(find "${HOME}/.mozilla/firefox/" -name "places.sqlite")
query="select p.url from moz_historyvisits as h, moz_places as p where substr(h.visit_date, 0, 11) >= strftime('%s', date('now')) and p.id == h.place_id order by h.visit_date;"
todays_urls=$(sqlite3 "${db}" "${query}")
echo "${todays_urls}" > todays_urls
Da es sich um eine * .sqlite- Datei handelt, können Sie dieses vim-Plugin installieren und mit vim nach einer Möglichkeit suchen, eine sqlite- Datei über das Terminal zu öffnen . Weitere Informationen finden Sie hier .
grep
), Sie können Diagramme erstellen usw. Alles, was in Firefox nicht möglich ist. Zumindest nicht ohne ein Addon zu hacken.Antworten:
Diese Seite beschreibt, welche benutzerspezifischen Informationen von Firefox wo gespeichert werden. (Und genau das sagt Mozillas Hilfe zum Anzeigen von .sqlite-Dateien aus.)
Es listet drei Arten von Geschichte auf:
Lesezeichen und Browserverlauf: Die Datei places.sqlite enthält alle Ihre Firefox-Lesezeichen und die Liste aller von Ihnen besuchten Websites ...
Verlauf der automatischen Vervollständigung : In der Datei formhistory.sqlite wird gespeichert, wonach Sie in der Firefox-Suchleiste gesucht haben und welche Informationen Sie in Formulare auf Websites eingegeben haben.
Download-Verlauf: Die downloads.sqlite- Datei merkt sich, was Sie heruntergeladen haben. ...
Wie Sie sehen, sind alle drei Historien keine einfachen Textdateien, sondern Datenbankdateien im
sqlite
Format.Eine Möglichkeit zum Anzeigen von
.sqlite
Dateien ist die Verwendung vonsqlite3
(sudo apt-get install sqlite3
).Öffnen Sie ein Terminal und
cd
den Ordner, in dem sich das befindet, was Sie anzeigen möchten. In meinem Fall ist das so~/.mozilla/firefox/w4wcp85s.default
.ls *.sqlite
listet die SQLite-Dateien auf.Führen Sie aus
sqlite3 places.sqlite
(wenn places.sqlite das ist, was Sie anzeigen möchten). Sie werden so etwas sehen:Nun gibt es mehrere Möglichkeiten. (Mit Ctrl+ Dbeenden Sie sqlite3).
Wenn ich zum Beispiel tippe
.tables
und drücke, Enterbekomme ich:Geben Sie zum Anzeigen des Inhalts
SELECT * FROM table_name;
(wobeitable_name
der Name der Tabelle ist, die Sie anzeigen möchten; beachten Sie die;
) ein und drücken Sie Enter. Es ist sehr wahrscheinlich, dass die Ausgabe nicht verständlich ist, aber das liegt nicht an sqlite3.Schauen Sie sich an (wenn Sie die Erweiterung Stylish verwenden ) , um ein Beispiel zu zeigen, das eine anständige Ausgabe liefert :
stylish.sqlite
Sie können alles in nur einem nicht interaktiven Befehl ausführen, wenn Sie genau wissen, was Sie wollen. Lesen Sie das Befehlszeilentool sqlite3, um mehr über sqlite3 zu erfahren.
wird das Notwendige in dem gegebenen Beispiel tun und
tee
Sie können die Ausgabe auch auf dem Bildschirm sehen:(Danke fällig hier .)
quelle
for DATABASE in *sqlite; do echo -e "********\n$DATABASE\n********";for TABLE in $(sqlite3 $DATABASE ".tables"); do echo -e "========\n$TABLE\n========"; sqlite3 $DATABASE "select * from $TABLE;"; done; done | grep 'stackoverflow\.com'
Oder anstatt die Ergebnisse zugrep
verwendenless
und darin zu suchen.~/.bash_history
abzeichnen, daher habe ich ein Python (3.5+) -Skript mit der Click- Bibliothek geschrieben, um das grundlegende Auflisten, Sortieren und Filtern viel einfacher zu machen. Sie können es von diesem Gist bekommen . Bitte hinterlassen Sie dort Kommentare, wenn Sie auf Probleme stoßen.Hier ist, was ich am Ende hatte (dank vorheriger Antworten):
quelle
| head -1
denfind
Befehl hinzufügen .Auf meinem Xubuntu 13.10 ist es an
/home/myusername/.mozilla/firefox/nod2ejl8.default/places.sqlite
Oder du könntest
find / -name 'places.sqlite
Da es sich um eine * .sqlite- Datei handelt, können Sie dieses vim-Plugin installieren und mit vim nach einer Möglichkeit suchen, eine sqlite- Datei über das Terminal zu öffnen . Weitere Informationen finden Sie hier .
quelle
~/.mozilla/firefox/*.default/places.sqlite
sollte funktionieren