这是我到目前为止所尝试的:
$sqlite3 cookies.sqlite sqlite> SELECT * FROM dbname.sqlite_master WHERE type='table'; sql error: file is encrypted or is not a database
我甚至无法列出表格,因此我无法开始尝试列出cookie.如果我可以连接,我希望能够在那里读取和写入数据,但我是sqlite的新手.
这是我所做的演练……
>下载sqlite 3,转到您的下载文件夹并解压缩该文件,以便您现在在下载文件夹中有一个新的sqlite 3.
>打开一个新的取景器窗口,按下CMD Shift G,在弹出的“转到”对话框中输入〜/ Library / Application Support / Firefox / Profiles,然后按回车键.
>假设您只有一个Firefox配置文件,您应该在这里看到一个名为XXXXXXXX.default的文件夹(其中XXX字符串将是一些随机字符).打开此文件夹,或者如果您有多个配置文件,请打开您要查找的配置文件的文件夹.
>你可以在里面找到cookies.sqlite数据库文件,你可以直接在这里使用它,但是你可能想在其他地方使用它,而不用担心搞乱Firefox使用的那个.如果你想直接使用Firefox,那么我认为你必须首先退出Firefox,否则它会锁定文件.
>打开一个新的终端窗口,并将sqlite3二进制文件从downloads文件夹拖到终端窗口,这应该在命令行中输入sqlite3的路径.
>现在,将cookies.sqlite3数据库(原始或您的副本)拖到终端,按终端中的return.
如果一切顺利,你应该得到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.