Câu trả lời ngắn:
hoàn toàn có khả năng bộ đệm sẽ không toàn diện. Nếu bạn xóa thư và hcache sau đó sẽ tính toán lại bộ đệm tiêu đề cho hộp thư đó, số liệu thống kê của bạn sẽ không bao gồm thư từ trước khi xóa.
Nếu bạn không có quyền truy cập vào nhật ký thư cho máy chủ của mình, bạn có quyền truy cập vào cơ chế lọc không, ví dụ như procmail? Bạn có thể sử dụng điều đó để tạo ra một bản ghi thay thế để phân tích.
Nếu không, bạn có thể thăm dò hộp thư của mình với một chương trình có thể tạo ra nhật ký nhận thư không? Một cái gì đó như bộ lọc offlineimap hoặc fetchmail / retchmail kết hợp với một số băm và bộ đệm.
Câu trả lời dài hơn:
Tệp bộ đệm là cơ sở dữ liệu kiểu DBM. Tùy thuộc vào các tùy chọn xây dựng chính xác cho mutt của bạn, nó có thể là một trong những QDBM , tủ tokyo , GDBM hoặc Berkeley DB (BDB); tất cả đều thực hiện một biến thể API của BDB.
Tôi tin rằng không có khả năng bạn có thể đọc DB một cách đáng tin cậy trừ khi bạn sử dụng triển khai thư viện phù hợp. ldd
cho tôi biết mutt địa phương của tôi sử dụng việc thực hiện nội các tokyo:
$ ldd /usr/bin/mutt
…
libtokyocabinet.so.8 => /usr/lib/libtokyocabinet.so.8 (0xb74f2000)
…
Sau đó, bạn sẽ cần phải viết một chương trình, sử dụng thư viện đó, để truy vấn BDB được lưu trữ trong tệp bộ đệm. Có các ràng buộc cho Perl, Ruby, Lua, Java và tất nhiên C.
Dường như các tiêu đề được lưu trữ dưới dạng các giá trị trong DB, được lập chỉ mục bởi CRC. Từ những gì tôi có thể nói, CRC có nguồn gốc từ đường dẫn đến hộp thư, ngụ ý rằng các tiêu đề được lưu trữ là tiêu đề cho tất cả thư trong hộp thư đó . Vì vậy, chương trình của bạn về cơ bản sẽ kết thúc với một bộ đệm chứa tất cả các tiêu đề cho tất cả thư trong một hộp thư nhất định. Tôi không nghĩ rằng nó sẽ hữu ích hơn nhiều so với việc lấy các tiêu đề từ tất cả các thư hiện có trong hộp thư của bạn (và đưa ra "câu trả lời ngắn" ở trên, không được đảm bảo là đáng tin cậy hơn).