小智 32
此页面描述了 Firefox 存储了哪些用户特定的信息以及存储在何处。(这就是 Mozilla 的帮助在查看 .sqlite 文件时所说的。)
它列出了三种类型的历史:
书签和浏览历史:places.sqlite文件包含您所有的 Firefox 书签和您访问过的所有网站的列表......
自动完成历史记录:formhistory.sqlite文件会记住您在 Firefox 搜索栏中搜索过的内容以及您在网站表单中输入的信息......
下载历史:downloads.sqlite文件会记住您下载的内容。...
如您所见,所有三个历史记录都不是简单的文本文件,而是sqlite格式的数据库文件。
查看.sqlite文件的一种方法是使用sqlite3( sudo apt-get install sqlite3)。
打开终端并cd转到包含您要查看的内容的文件夹。就我而言,就是~/.mozilla/firefox/w4wcp85s.default.
ls *.sqlite 列出 sqlite 文件。
运行sqlite3 places.sqlite(如果places.sqlite 是您要查看的内容)。你会看到这样的东西:
$ 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>
Run Code Online (Sandbox Code Playgroud)
现在,您可以做几件事。(使用Ctrl+D退出 sqlite3)。
例如,打字.tables和按Enter给我:
sqlite> .tables
moz_anno_attributes moz_favicons moz_items_annos
moz_annos moz_historyvisits moz_keywords
moz_bookmarks moz_hosts moz_places
moz_bookmarks_roots moz_inputhistory
sqlite>
Run Code Online (Sandbox Code Playgroud)
要查看内容,请键入SELECT * FROM table_name;(table_name您要查看的表的名称在哪里;注意;)并按Enter。输出很可能无法理解,但这不是 sqlite3 的错。
要向您展示一个确实提供不错输出的示例,请查看stylish.sqlite(如果您使用Stylish 扩展名):
$ ~/.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}
Run Code Online (Sandbox Code Playgroud)
如果您确切地知道自己想要什么,则只需一个非交互式命令即可完成所有操作。有关 sqlite3的更多信息,请阅读sqlite3 命令行工具。
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" > ~/Desktop/filename.txt
Run Code Online (Sandbox Code Playgroud)
将在给定的示例中执行必要的操作,并且还tee可以让您在屏幕上看到输出:
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" | tee ~/Desktop/filename.txt
Run Code Online (Sandbox Code Playgroud)
(感谢在这里。)
小智 9
这是我最终得到的结果(感谢之前的答案):
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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42616 次 |
| 最近记录: |