Có lệnh nào để hiển thị lịch sử Firefox từ Terminal không?
mà không cần phải nhập lịch sử Firefox vào đồ họa.
grep
), bạn có thể tạo biểu đồ, v.v. Mọi thứ không thể có trong firefox. Ít nhất không phải không hack một addon.
Có lệnh nào để hiển thị lịch sử Firefox từ Terminal không?
mà không cần phải nhập lịch sử Firefox vào đồ họa.
grep
), bạn có thể tạo biểu đồ, v.v. Mọi thứ không thể có trong firefox. Ít nhất không phải không hack một addon.
Câu trả lời:
Trang này mô tả thông tin cụ thể của người dùng được lưu trữ bởi Firefox và ở đâu. (Và đây là những gì trợ giúp của Mozilla nói về việc xem các tệp .sqlite.)
Nó liệt kê ba loại lịch sử:
Dấu trang và Lịch sử duyệt web: Tệp records.sqlite chứa tất cả dấu trang Firefox của bạn và danh sách tất cả các trang web bạn đã truy cập ...
Lịch sử tự động hoàn tất: Tệp formhistory.sqlite ghi nhớ những gì bạn đã tìm kiếm trong thanh tìm kiếm Firefox và thông tin bạn đã nhập vào biểu mẫu trên trang web ...
Lịch sử tải xuống : Tệp download.sqlite ghi nhớ những gì bạn đã tải xuống. ...
Như bạn có thể thấy, cả ba lịch sử không phải là tệp văn bản đơn giản mà là tệp cơ sở dữ liệu ở sqlite
định dạng.
Một cách để xem .sqlite
tệp là sử dụng sqlite3
( sudo apt-get install sqlite3
).
Mở một thiết bị đầu cuối và cd
vào thư mục chứa những gì bạn muốn xem. Trong trường hợp của tôi, đó là ~/.mozilla/firefox/w4wcp85s.default
.
ls *.sqlite
liệt kê các tập tin sqlite.
Chạy sqlite3 places.sqlite
(nếu tests.sqlite là những gì bạn muốn xem). Bạn sẽ thấy một cái gì đó như thế này:
$ 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>
Bây giờ, có một số điều bạn có thể làm. (Sử dụng Ctrl+ Dđể thoát sqlite3).
Ví dụ, gõ .tables
và nhấn Entercung cấp cho tôi:
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>
Để xem nội dung, nhập SELECT * FROM table_name;
(nơi table_name
là tên của bảng bạn muốn xem; ghi chú ;
) và nhấn Enter. Có vẻ như đầu ra sẽ không thể hiểu được nhưng đó không phải là lỗi của sqlite3.
Để hiển thị cho bạn một ví dụ mà không cung cấp sản lượng khá, nhìn vào stylish.sqlite
(nếu bạn sử dụng phần mở rộng phong cách ):
$ ~/.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}
Bạn có thể làm mọi thứ chỉ trong một lệnh không tương tác nếu bạn biết chính xác những gì bạn muốn. Đọc Công cụ dòng lệnh sqlite3 để biết thêm về sqlite3.
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" > ~/Desktop/filename.txt
sẽ làm cần thiết trong ví dụ đã cho và tee
cũng sẽ cho bạn thấy đầu ra trên màn hình:
$ sqlite3 stylish.sqlite "SELECT * FROM styles;" | tee ~/Desktop/filename.txt
(Cảm ơn do ở đây .)
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'
Hoặc thay vì grep
sử dụng less
và tìm kiếm bên trong kết quả.
~/.bash_history
, vì vậy tôi đã viết một tập lệnh Python (3.5+) bằng thư viện Click để tạo danh sách cơ bản, sắp xếp và lọc dễ dàng hơn nhiều. Bạn có thể lấy nó từ Gist này . Vui lòng để lại ý kiến ở đó nếu bạn gặp vấn đề.
Đây là những gì tôi đã kết thúc (nhờ các câu trả lời trước):
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
vào find
lệnh.
Trên Xubfox 13.10 của tôi, nó bật
/home/myusername/.mozilla/firefox/nod2ejl8.default/places.sqlite
Hoặc bạn có thể
find / -name 'places.sqlite
Vì là tệp * .sqlite , bạn có thể cài đặt plugin vim này và sử dụng vim , tìm kiếm cách mở tệp sqlite từ thiết bị đầu cuối. Thêm thông tin có thể được tìm thấy ở đây .
~/.mozilla/firefox/*.default/places.sqlite
nên làm việc