1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #!/bin/bash set -e
CUTOFF_DATE=$(date -v-2y +%Y-%m-%d)
echo "📅 删除 $CUTOFF_DATE 之前的 Chrome 历史记录..."
HISTORY_FILE=$(find ~/Library/Application\ Support/Google/Chrome -type f -name "History" | head -n 1)
if [ -z "$HISTORY_FILE" ]; then echo "❌ 找不到 Chrome 历史记录文件" exit 1 fi
echo "✅ 找到历史记录文件: $HISTORY_FILE"
BACKUP_FILE="${HISTORY_FILE}.bak.$(date +%Y%m%d%H%M%S)" cp "$HISTORY_FILE" "$BACKUP_FILE" echo "💾 已备份到 $BACKUP_FILE"
CHROME_EPOCH_DIFF=11644473600 UNIX_TS=$(date -j -f "%Y-%m-%d" "$CUTOFF_DATE" +%s) CHROME_TS=$(( ($UNIX_TS + $CHROME_EPOCH_DIFF) * 1000000 ))
/usr/bin/sqlite3 "$HISTORY_FILE" <<EOF DELETE FROM urls WHERE last_visit_time < $CHROME_TS; DELETE FROM visits WHERE visit_time < $CHROME_TS; EOF
echo "🧹 清理完成!请重启 Chrome 以生效。"
|