Answers:
因此,我今天醒来了我的睡眠跟踪器应用程序,告诉我我比想像的要早一个小时上床睡觉,所以自然而然地我认为该应用程序是犯了这个愚蠢错误的人。幸运的是,我上床睡觉之前是上网冲浪,但是很显然,从High Sierra或Safari 11开始,Apple再次改变了一切,因此其他答案对我不起作用。
我找到了如何获取访问时间的方法,由于我已经走了很深的路要走到这个非常不重要的问题的底部,所以我想在这里分享我的发现:
好吧,所以我走了一点,写了一个bash单线来为您做所有的辛苦工作。只需打开终端并将其复制粘贴即可。它无需安装任何东西即可工作,除非苹果在此期间再次进行了更改。
您可以忽略输出中的空行(它们是http-redirects),并且可以更改30
命令中的最后一个数字以过滤要查看的行数。
sqlite3 ~/Library/Safari/History.db 'select visit_time,title from history_visits order by visit_time desc;' \
| while read i; do d="${i%%.*}"; echo "$(date -r $((d+978307200))) | ${i#*|}"; done \
| head -n 30
因此,他们现在不再像以前那样拥有一个包含所有历史记录的简单文件夹,而是将历史记录写入数据库。如果您确实要这样做,则可以通过以下方式获取信息:
/Users/[yourname]/Library/Safari/History.db
。希望这能解决您与历史有关的难题。
我修改了meonlol上面提供的oneliner。这样,它只是纯SQL查询。
sqlite3 ~/Library/Safari/History.db \
'SELECT datetime(visit_time+978307200, "unixepoch", "localtime"), title
FROM history_visits
ORDER BY visit_time DESC
LIMIT 30;'
在Mojave中,可能以后,在终端中访问文件似乎受到限制。无论是授予在系统偏好全面进入终端或使用Finder打开~/Library/Safari
,然后复制History.db
到别的地方。
我想要URL以及窗口标题,以及可以在查询中添加的搜索或选择等功能(在任何地方说明google)。在这种情况下,我删除了与号(&)字符后的所有URL长尾。交谘会把它放到最末尾。在终端会话中:
sqlite3 ~/Library/Safari/History.db 'SELECT datetime(history_visits.visit_time+978307200, "unixepoch", "localtime"), history_visits.title || " @ " || substr(history_items.URL,1,max(length(history_items.URL)*(instr(history_items.URL,"&")=0),instr(history_items.URL,"&"))) as Info FROM history_visits INNER JOIN history_items ON history_items.id = history_visits.history_item where Info like "%google%" ORDER BY visit_time DESC LIMIT 30;'|tac
在给定的日期查看浏览会涉及到时间和日期的复杂性,但这可能会在给定的日期和时间帮助您满足需要edit2020-01-19 15:30 ...
sqlite3 ~/Library/Safari/History.db 'SELECT datetime(history_visits.visit_time+978307200, "unixepoch", "localtime"), history_visits.title || " @ " || substr(history_items.URL,1,max(length(history_items.URL)*(instr(history_items.URL,"&")=0),instr(history_items.URL,"&"))) as Info FROM history_visits INNER JOIN history_items ON history_items.id = history_visits.history_item where history_visits.visit_time>(julianday("2020-01-19 15:30")*86400-211845068000) ORDER BY visit_time ASC LIMIT 30;'
提供如下输出:
2020-01-20 16:35:15|Amazon.co.uk: carborundum wheel @ https://www.amazon.co.uk/s/ref=nb_sb_noss_1?url=search-alias%3Daps&
2020-01-20 16:35:15|Amazon.co.uk: carborundum wheel @ https://www.amazon.co.uk/s?k=carborundum+wheel&
2020-01-20 16:35:41|Multi-Sharp 1301 Rotary Mower/Garden Tool Sharpener: Amazon.co.uk: Garden & Outdoors @ https://www.amazon.co.uk/Multi-Sharp-Rotary-Mower-Garden-Sharpener/dp/B0001OZH6M/ref=sr_1_11?keywords=carborundum+wheel&
2020-01-20 16:37:14|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:39:26|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:39:26|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:40:15|FERM BGA1057 Grind Stone: Amazon.co.uk: DIY & Tools @ https://www.amazon.co.uk/Ferm-BGA1057-FERM-Grind-Stone/dp/B00AW9GVO8/ref=sr_1_71?keywords=grinding+wheel&
最后一点,如果打开sqlite3会话进行大量查询,我发现如果继续使用Safari,数据库似乎不会更新。也许使用了快照副本?(这在El Capitan上。如果您必须在更高版本的OS上进行文件复制,显然不会显示任何更新!)