#!/bin/bash REPO_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"; cd .. && pwd )" if [[ "$1" == "--chrome" ]]; then # Google Chrome / Chromium default=$(ls ~/Library/Application\ Support/Google/Chrome/Default/History) if [[ -e "$2" ]]; then cp "$2" "$REPO_DIR/output/sources/chrome_history.db.tmp" else echo "Defaulting to history db: $default" echo "Optionally specify the path to a different sqlite history database as the 2nd argument." cp "$default" "$REPO_DIR/output/sources/chrome_history.db.tmp" fi sqlite3 "$REPO_DIR/output/sources/chrome_history.db.tmp" "SELECT \"[\" || group_concat(json_object('timestamp', last_visit_time, 'description', title, 'href', url)) || \"]\" FROM urls;" > "$REPO_DIR/output/sources/chrome_history.json" rm "$REPO_DIR/output/sources/chrome_history.db.tmp" echo "Chrome history exported to:" echo " output/sources/chrome_history.json" fi if [[ "$1" == "--firefox" ]]; then # Firefox default=$(ls ~/Library/Application\ Support/Firefox/Profiles/*.default/places.sqlite) if [[ -e "$2" ]]; then cp "$2" "$REPO_DIR/output/sources/firefox_history.db.tmp" else echo "Defaulting to history db: $default" echo "Optionally specify the path to a different sqlite history database as the 2nd argument." cp "$default" "$REPO_DIR/output/sources/firefox_history.db.tmp" fi sqlite3 "$REPO_DIR/output/sources/firefox_history.db.tmp" "SELECT \"[\" || group_concat(json_object('timestamp', last_visit_date, 'description', title, 'href', url)) || \"]\" FROM moz_places;" > "$REPO_DIR/output/sources/firefox_history.json" rm "$REPO_DIR/output/sources/firefox_history.db.tmp" echo "Firefox history exported to:" echo " output/sources/firefox_history.json" fi