在我的Firefox配置文件目录中有一个cookies.sqlite
文件,其中包含Firefox Cookie的数据。我抓住了Firefox SQLite Manager 扩展并加载了这个文件,但是如何使用普通查询命令来读取该文件中的cookie?
这是我到目前为止所尝试的:
$ sqlite3 cookies.sqlite
sqlite> SELECT * FROM dbname.sqlite_master WHERE type='table';
SQL error: file is encrypted or is not a database
我甚至无法列出表格,因此我无法开始尝试列出Cookie。如果我可以连接,我希望能够在那里读取和写入数据,但我是SQLite的新手。
答案 0 :(得分:10)
我在尝试阅读Mac OS 10.6.8(Snow Leopard)上的cookies.sqlite文件时遇到了同样的问题。我从http://www.sqlite.org/download.html下载了SQLite 3.7.10,然后我可以打开该文件。
以下是我所做的演练......
sqlite3
二进制文件从downloads文件夹拖到终端窗口,这应该在命令行中输入sqlite3
的路径。如果一切顺利,你应该得到sqlite>命令提示符。如果您输入.tables,您应该看到表moz_cookies,然后您可以进一步查询和调查。
以下命令可能有所帮助:
.mode column
.headers on
select * from moz_cookies where domain = '.stackoverflow.com';
您应该会看到此网站的Cookie中存储的所有值。
我发现这个尝试提取curl使用的cookie值,并发现:http://slacy.com/blog/2010/02/using-cookies-sqlite-in-wget-or-curl/非常有帮助。
如果你想更新Mac上的现有sqlite3,我做了sudo mv /usr/bin/sqlite3 /usr/bin/sqlite3.old
(如果以后遇到任何问题,我可以再将其移回),然后sudo mv ~/downloads/sqlite3 /usr/bin/sqlite3
。
答案 1 :(得分:0)
使用sqlite3
sqlite3 file.sqlite
然后使用以下命令查看表
.tables
答案 2 :(得分:0)
我能够使用开源通用数据库管理器DBeaver打开它。