답변:
방금 10.11.4에서 이것을 시도했지만 작동합니다. 당신은 역사를 볼 수 있습니다. 누군가 캐시를 지우면 사라집니다.
다음 위치로 이동하십시오.
/Users/yourname/Library/Caches/Metadata/Safari/History/
여기에서보기를 목록보기로 변경하고 수정 한 날짜별로 정렬 할 수 있습니다.
그래서 오늘은 잠자기 추적기 앱으로 깨어나서 내가 생각했던 것보다 한 시간 일찍 잠자리에 들었다고 말하면서 자연스럽게 앱이 어리석은 실수를 한 사람이라고 생각했습니다. 운 좋게도 잠자리에 들기 전에 웹 서핑을했지만 애플은 하이 시에라 나 사파리 11에서 다시 한 번 바꿔서 다른 답변이 효과가 없었습니다.
방문 시간을 얻는 방법을 알아 냈고,이 중요하지 않은 문제의 맨 처음에 도달하기 위해 먼 길을 갔으므로 여기에서 찾은 내용을 공유하겠다고 생각했습니다.
알았어 그래서 나는 조금 더 버려졌고 당신을 위해 모든 노력을 다하는 bash one-liner를 썼다. 터미널을 열고 복사하여 붙여 넣기 만하면됩니다. Apple이 그 동안 무언가를 다시 변경하지 않은 한 아무것도 설치하지 않아도 작동합니다.
출력에서 빈 줄을 무시하고 (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;'
모하비에서 그리고 아마도 나중에 터미널에서 파일에 액세스하는 것은 제한적인 것 같습니다. 어느 시스템 환경 설정의 터미널에 대한 전체 액세스 권한을 부여 하거나 열 파인더를 사용 ~/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 버전에서 파일을 복사해야 할 경우 업데이트가 표시되지 않습니다!)