Skype将其聊天记录存储在SQLite数据库中~/Library/Application Support/Skype/YourSkypeName/main.db
。您可以使用命令行sqlite3
工具查看聊天记录。
找出您的聊天伙伴的用户名
终端中的以下命令(假设您使用的是bash
Shell)列出了所有聊天伙伴的用户名:
sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db 'SELECT DISTINCT(dialog_partner) FROM Messages;'
提取与特定聊天伙伴之间的所有消息
选项A.写入终端
要打印与某个聊天伙伴(theOtherPersonsUserName
)之间的所有消息,请使用以下命令:
sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;"
这将按时间顺序每行打印一条消息,并发送用户名,显示名称,日期和文本,如下所示:
danielbecks-用户名| Daniel Beck | 2012-02-03 08:47:53 |只需测试一下
选项B.写入文件
您可以将此聊天记录直接写入文件。运行以下命令将日志写入theOtherPersonsUserName
文件theOtherPersonsUserName.log
:
sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;" > "theOtherPersonsUserName.log"
当然,您也可以main.db
在任何SQLite数据库查看器中打开并转到那里。