Próbuję napisać skrypt, aby sprawdzić, ile nieprzeczytanych wiadomości znajduje się w określonej skrzynce pocztowej. Myślałem, że thunderbird (icedove, używam debiana jessie) używał nagłówka X-Mozilla-Status, aby to śledzić. Rzeczywiście, w przypadku moich kont pocztowych POP sprawdzenie, czy ostatnia cyfra nagłówka X-Mozilla-Status wynosi 0, mówi mi, czy wiadomość została przeczytana, i poprawnie podaje liczbę nieprzeczytanych wiadomości.
Jednak w przypadku moich kont IMAP flaga stanu X-Mozilla wydaje się nie mieć związku z tym, czy przeczytałem wiadomość e-mail. Zupełnie nowe wiadomości e-mail są oznaczone cyfrą 1 w ostatnim miejscu, a niektóre w ogóle nie mają flagi.
Moim celem końcowym jest mieć coś takiego
grep -c "X-Mozilla-Status: [0-9]\{3\}0" $MAIL_FOLDERS | grep -o '[0-9]\+$' | xargs echo
który faktycznie działa z kontami IMAP.
źródło
Stan odczytu jest czasami przechowywany w pliku MSF skojarzonym z folderem.
Plik ma format Mork, a status odczytu znajduje się w kolumnie „flagi”.
Możesz uzyskać informacje w formacie XML za pomocą https://github.com/KevinGoodsell/mork-converter/
źródło