2

Использование Firefox. Я хотел бы избавиться от "устаревших" куки. Под "устаревшим" я подразумеваю файлы cookie, к которым не обращался ни один веб-сайт в течение последних x дней.

Я искал высоко и низко, но я не нашел, как это сделать. Что я нашел, среди прочего:

  • ограничьте время жизни всех файлов cookie (о:config -> network.cookie.lifetimePolicy).
  • белый или черный списки доменов (настройки Firefox -> конфиденциальность -> исключения cookie).
  • удалить все куки за последние x часов (история Firefox -> очистить недавнюю историю).

Ничего из этого я не хочу.

Я хочу удалить все файлы cookie, к которым не обращался ни один веб-сайт за последние x дней.

2 ответа2

1

Я провел небольшое исследование.

  1. Файлы cookie хранятся в файле cookies.sqlite в каталоге профиля firefox.
  2. Файл представляет собой базу данных sqlite.
  3. Метка времени последнего доступа хранится в lastAccessed столбце таблицы moz_cookies
  4. Формат lastAccessed - это некоторый формат PRTime , который в основном является временем эпохи Unix с микросекундами.

В следующем запросе будут перечислены все файлы cookie, к которым не обращались в течение последних 14 дней.

select host, name from moz_cookies
where lastaccessed < strftime('%s000000', 'now', '-14 days')
order by lastaccessed;

Я только что выучил SQL для этого, поэтому вполне возможно, что этот запрос можно сделать лучше.

Следующий запрос удалит все эти куки.

delete from moz_cookies
where lastaccessed < strftime('%s000000', 'now', '-14 days');

Вот быстрый и грязный скрипт оболочки, который делает эту работу. Вам понадобится команда sqlite3 установленная в вашей системе.

#!/bin/sh

DAYS="14"

SELECT="select host, name"
DELETE="delete"
FROM="from moz_cookies"
OBSOLETE="strftime('%s000000', 'now', '-$DAYS days')"
WHERE="where lastaccessed < $OBSOLETE"
ORDER="order by lastaccessed"

SELECTQUERY="$SELECT $FROM $WHERE $ORDER;"
DELETEQUERY="$DELETE $FROM $WHERE;"

printf '%s\n' "$SELECTQUERY" | sqlite3 cookies.sqlite
1

Расширение Cookie Time может быть настроено на автоматическое удаление файлов cookie, которые не использовались в течение определенного времени (истек). Он также имеет отдельную настройку для принудительного истечения срока действия / удаления всех файлов cookie старше указанного возраста.

Скриншот конфигурации Cookie Time

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .