Firefox 29 - как удалить записи истории, посещенные менее x раз
Контекст:
Я использую свой профиль Firefox в течение нескольких лет. Естественно, мой файл истории стал огромным. Я установил Firefox Sync между моим основным настольным ПК и ноутбуком.
HW конфиги:
- ПК: i5-3450, 8 ГБ оперативной памяти DDR3, Crucial M4 128 ГБ SSD
- ноутбук: Pentium SU4100, 4 ГБ оперативной памяти DDR3, жесткий диск WD 5400 об / мин
Доступ к записям истории при наборе в Awesome Bar на моем рабочем столе занимает довольно много времени, несмотря на приличную конфигурацию, но ноутбук работает даже медленнее. Опыт совершенно не отвечает.
Я подумал, что если я немного проясню историю, я мог бы избежать создания нового профиля, чтобы ускорить процесс.
Сам вопрос:
Проиллюстрировать:
Есть ли способ удалить все записи истории, которые были посещены меньше, чем x (скажем, 5) раз, и в то же время недавнее посещение меньше, чем y (скажем, 120) дней?
afaik файл истории - это какая-то база данных SQL, но я не совсем уверен, как данные сохраняются, если есть "безопасный способ" их редактировать и как будет выглядеть запрос для выполнения того, что мне нужно.
Я продолжал просматривать предыдущие вопросы SuperUser, чтобы посмотреть, смогу ли я найти соответствующую информацию.
В моей директории профиля Firefox есть файл с именем
places.sqlite
, Открытие его с помощью sqlite показывает (среди прочего) таблицыmoz_places
а такжеmoz_historyvisits
, Кажется, чтоmoz_historyvisits
использует основнойmoz_places
ссылаться на URL.
Поскольку я не знаком с базами данных, я не совсем понимаю, как связаны две таблицы, упомянутые в цитате.
скриншот части таблиц
Я заметил visit_count
в стандартном формате, что облегчает работу с ним. last_visit_date
выглядит зашифрованным невооруженным глазом, но я не вижу, каким образом.
Надеюсь, это поможет, я в конце концов.
1 ответ
Проведя некоторые исследования (см. В конце "ссылки"), я нашел следующее (вроде) простое решение:
BACKUP FIRST. ЗАКРЫТЬ FIREFOX ПЕРВЫЙ
Для этого необходимо отредактировать базу данных SQLite (автономную базу данных SQL; см. Статью в Википедии) Mozilla Firefox, выполнив запрос для поиска всех записей, которые удовлетворяют условию (в вашем случае - просматриваются менее 5 раз и не посещаются в последние 120 дней).
BACKUP FIRST. ЗАКРЫТЬ FIREFOX ПЕРВЫЙ
Инструкция начала:
Это работает (проверено и работает с моим Firefox v. 29.0.1). В 12 простых (иш) шагов:
Установите браузер базы данных SQLite
Открой это
Нажмите Открыть базу данных
Перейдите к
C:\Users\[USER]\AppData\Roaming\Mozilla\Firefox\Profiles\[PROFILE]
редактирование по мере необходимостиBACKUP СЛЕДУЮЩИЙ ФАЙЛ ПЕРВЫЙ!!
открыто
places.sqlite
из каталога, который вы открыли на шаге 4.СЕРЬЕЗНО, BACKUP FIRST!!
Перейдите на вкладку "Выполнение SQL".
Введите это:
SELECT * FROM moz_places WHERE last_visit_date BETWEEN strftime('%s','2014-04-01')*1000000 AND strftime('%s','2014-05-30')*1000000 AND visit_count < x(2)
замещать
x(2)
до 5 (в вашем примере)замещать
2014-04-01
а также2014-05-30
с диапазоном дат вы хотитеНажмите синюю кнопку воспроизведения.
Проверьте правильность отображаемых сайтов (они должны быть, но дважды проверьте!)
Если они есть, то замените первые две строки приведенного выше кода на:
DELETE FROM moz_places
поэтому ваш код выглядит примерно так:
DELETE FROM moz_places WHERE last_visit_date BETWEEN strftime('%s','2014-04-01')*1000000 AND strftime('%s','2014-05-30')*1000000 AND visit_count < x(2)
СДЕЛАННЫЙ! Закройте программу и нажмите "Сохранить" при закрытии.
Инструкции конец
Что насчет last_visit_date
?
Last_visit_date выглядит зашифрованным невооруженным глазом, но я не вижу, каким образом.
Я бы не назвал его "зашифрованным" (хотя я не согласен с тем, что он выглядит зашифрованным). Это просто в другой "системе". Дата в Unix
система времени (или Epoch
/ POSIX
). Это количество секунд, прошедших с 00:00:00 (UTC) 1 января 1970 года. 1 час - 3600 секунд. 1 год составляет 31556926 дней.
Для получения дополнительной информации. посмотрите эту статью в Википедии или этот сайт, который конвертирует время в эпоху и обратно.
Снимки экрана (игнорируйте запросы SQL на этих изображениях, они неправильные. Они в основном говорят вам, где искать)
Благодаря;):
- Как написать SQL-запрос для SQLite Manager для Firefox place.sqlite?
- нужна помощь в обновлении истории на определенную дату (форум поддержки Firefox)
- Оператор SQL DELETE (w3schools)
- Как мне декодировать поле Last_Date_ Visited в db place.sqlite? (Форум поддержки Firefox)