Как удалить историю OLD из Google Chrome?

Я работаю на ноутбуке со скромным жестким диском, а 500 МБ заняты файлами Google Chrome «History Index» и «Thumbnails». Некоторые из этих файлов – год. Chrome предлагает мне удалить недавнюю историю, но я хочу наоборот: я хочу удалить старую историю. (В идеале я бы удалил наименее недавно использованную информацию истории, но я не ожидаю, что смогу это сделать.)

У кого-нибудь есть идеи? Я запускаю стандартный пакет Debian google-chrome-beta .

  • Linux устанавливает сервер для статического ip и имени сервера
  • Вызовите рабочий процесс
  • USB-накопитель загадочно становится защищенным от записи
  • Монтируемая файловая система, которая автоматически разделяет файлы
  • Как преобразовать несколько файлов в кодировку UTF-8 с помощью инструментов командной строки * nix?
  • Ssh 2 разных компьютера за одним маршрутизатором и модемом?
  • Как зашифровать файл или каталог в Linux?
  • Как получить размер каталога Linux или Mac OS X из командной строки?
  • 2 Solutions collect form web for “Как удалить историю OLD из Google Chrome?”

    Позорный Google, пока еще нет .

    Кроме того, все базы данных Chrome – это только файлы sqlite3, и вы можете использовать sqlite3 для очистки ненужных записей. Сначала установите клиент sqlite3 ( sudo apt-get install sqlite3 ), а затем перейдите в конфигурацию Chrome (должен быть .config/chrome/Default ).

    Вот фрагмент SQL, который удаляет старые URL из истории (работает с базами данных History , Archived History ):

     delete from urls where last_visit_time <= (strftime('%s',(select max(last_visit_time)/10000000 from urls),'unixepoch','-1 days')*10000000); 

    Вот еще один, который, вероятно, будет работать с базой данных Thumbnails :

     attach database 'History' as history; delete from thumbnails where last_updated <= (strftime('%s',(select max(last_visit_time)/10000000 from history.urls),'unixepoch','-1 days') *10000000); 

    Вероятно, это будет работать с History Index -es:

     attach database 'History' as history; delete from info i, pages_content pc where i.time <= (strftime('%s',(select max(last_visit_time)/10000000 from history.urls),'unixepoch','-1 days')* 10000000) and i.rowid = pc.rowid; 

    Конечно, вы должны делать резервные копии всех баз данных, потому что у вас может быть другая версия Chrome, или я могу случайно пропустить символ и т. Д.

    Поскольку Chrome хранит свое время в каком-то странном формате на основе эпохи UNIX (но умножается на 10 ^ 7 и смещается в будущее), системные функции, возвращающие дату, не могут быть использованы; Вместо этого используется дата последнего открытия страницы.

    Вы можете заменить -1 days любым желаемым интервалом; Вы можете прочитать о разрешенных модификаторах в документации SQLite (в ближайшее время: -N days , -N months ).

    После удаления ненужных данных вы можете захотеть выпустить vacuum; Команда, которая еще больше сокращает базу данных.

    (Это не ответ, но я оставляю его как предупреждение.)

    Я видел два расширения, которые утверждают, что это так, но не работает.

    • История Click2Clear только удаляет последние элементы. (Или пытается.)
    • Ограничитель истории удаляет старые элементы каждый раз, когда вы посещаете историю.

    Однако эти (и я ожидаю, что другие расширения) вызывают только chrome.history.deleteRange – если вам повезет, с разумными параметрами. Согласно документации:

    Удаляет все элементы в указанном диапазоне дат из истории. Страницы не будут удалены из истории, если все посещения не попадут в диапазон.

    И на практике я не вижу никакого эффекта, кроме (я думаю) страниц, не появляющихся на странице истории. В частности, файл базы данных истории по-прежнему большой, и Chrome по-прежнему делает много ввода-вывода. Поэтому я подозреваю (из очень случайного наблюдения с Chromium 9 beta r68937), что chrome.history.deleteRange влияет только на то, что видно на странице chrome://history а не на том, что хранится на диске, и влияет на такие вещи, как завершение строки URL.

    Давайте будем гением компьютера.