Есть ли команда для отображения истории Firefox из Терминала?
без необходимости вводить историю Firefox графически.
grep
), вы можете создавать графики и т. Д. Все, что невозможно внутри Firefox. По крайней мере, не взломав аддон.
Есть ли команда для отображения истории Firefox из Терминала?
без необходимости вводить историю Firefox графически.
grep
), вы можете создавать графики и т. Д. Все, что невозможно внутри Firefox. По крайней мере, не взломав аддон.
Ответы:
На этой странице описывается, какая специфичная для пользователя информация хранится в Firefox и где. (И это то, что говорит помощь Mozilla при просмотре файлов .sqlite.)
В нем перечислены три типа истории:
Закладки и история просмотра: файл place.sqlite содержит все ваши закладки Firefox и список всех посещенных вами веб-сайтов ...
История автозаполнения: файл formhistory.sqlite запоминает, что вы искали в панели поиска Firefox, и какую информацию вы вводили в формы на веб-сайтах ...
История загрузок: файл downloads.sqlite запоминает то, что вы скачали. ...
Как видите, все три истории - это не простые текстовые файлы, а файлы базы данных в sqlite
формате.
Один из способов просмотра .sqlite
файлов - использование sqlite3
( sudo apt-get install sqlite3
).
Откройте терминал и cd
в папку, содержащую то, что вы хотите просмотреть. В моем случае это так ~/.mozilla/firefox/w4wcp85s.default
.
ls *.sqlite
перечисляет файлы sqlite.
Запустите sqlite3 places.sqlite
(если вы хотите просмотреть места.sqlite). Вы увидите что-то вроде этого:
$ cd ~/.mozilla/firefox/w4wcp85s.default
$ sqlite3 places.sqlite
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
Теперь есть несколько вещей, которые вы можете сделать. (Используйте Ctrl+ Dдля выхода из sqlite3).
Например, набор текста .tables
и нажатие Enterдает мне:
sqlite> .tables
moz_anno_attributes moz_favicons moz_items_annos
moz_annos moz_historyvisits moz_keywords
moz_bookmarks moz_hosts moz_places
moz_bookmarks_roots moz_inputhistory
sqlite>
Чтобы просмотреть содержимое, введите SELECT * FROM table_name;
(где table_name
указано название таблицы, которую вы хотите просмотреть; запишите ;
) и нажмите Enter. Вполне вероятно, что вывод не будет понятным, но это не ошибка sqlite3.
Чтобы показать вам пример, который обеспечивает приличный вывод, посмотрите stylish.sqlite
(если вы используете расширение Stylish ):
$ ~/.mozilla/firefox/w4wcp85s.default $ sqlite3 stylish.sqlite
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
style_meta styles
sqlite> SELECT * FROM styles;
6||||YouTube|/* AGENT_SHEET */
/* ▓▓ NIGHTSHIFT - eye care: ▓▓
▓▓_http://userstyles.org/styles/18192/nightshift-eye-care_▓▓ */
@namespace url(http://www.w3.org/1999/xhtml);
@-moz-document regexp("https?://www.youtube.com/.*") {
body,html {min-height: 100%!important; }
html, body{background-color:#111!important}
Вы можете сделать все в одной неинтерактивной команде, если точно знаете, чего хотите. Прочтите инструмент командной строки sqlite3, чтобы узнать больше о sqlite3.
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" > ~/Desktop/filename.txt
сделаем все необходимое в приведенном примере и tee
также увидим вывод на экране:
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" | tee ~/Desktop/filename.txt
(Спасибо за здесь .)
for DATABASE in *sqlite; do echo -e "********\n$DATABASE\n********";for TABLE in $(sqlite3 $DATABASE ".tables"); do echo -e "========\n$TABLE\n========"; sqlite3 $DATABASE "select * from $TABLE;"; done; done | grep 'stackoverflow\.com'
Или вместо grep
использования less
и искать внутри результатов.
~/.bash_history
, поэтому я написал скрипт на Python (3.5+), используя библиотеку Click, чтобы упростить базовый листинг, сортировку и фильтрацию. Вы можете получить это из этого Gist . Пожалуйста, оставляйте комментарии там, если у вас возникнут проблемы.
Вот чем я закончил (благодаря предыдущим ответам):
db=$(find "${HOME}/.mozilla/firefox/" -name "places.sqlite")
query="select p.url from moz_historyvisits as h, moz_places as p where substr(h.visit_date, 0, 11) >= strftime('%s', date('now')) and p.id == h.place_id order by h.visit_date;"
todays_urls=$(sqlite3 "${db}" "${query}")
echo "${todays_urls}" > todays_urls
| head -1
в find
команду.
На моем Xubuntu 13.10 он включен
/home/myusername/.mozilla/firefox/nod2ejl8.default/places.sqlite
Или ты мог
find / -name 'places.sqlite
Так как это файл * .sqlite , вы можете установить этот плагин vim и использовать vim , найти способ открыть файл sqlite из терминала. Более подробную информацию можно найти здесь .
~/.mozilla/firefox/*.default/places.sqlite
должен работать