Как просмотреть файл сообщения электронной почты (, расположенный в папке MailDir ), из командной строки?

Параметр конфигурации ForceCommandв sshd_config— это то, что вам нужно. Я рекомендую вам установить ваше приложение там, а не зависеть от поведения .profile.

2
13.05.2021, 15:12
3 ответа

Пакет maildir -utils (, по крайней мере, он так называется в Debian )содержит программу с именем mu, которая имеет хорошую функциональность для отображения содержимого почтового сообщения Maildir. Он отображает только заголовки, текстовую/простую часть плюс список вложений. См. справочную страницу .

Пример:mu view /path/to/email-file.

4
28.07.2021, 11:32

Используйте mutt -f /path/to/Maildir. Или mutt -R -f /path/to/Maildir, если вы хотите, чтобы mutt открывал почтовый ящик только для чтения -.

Линейные инструменты команды -, о которых вы думаете, вероятно, MH , она же Система обработки сообщений , которая является древней и -не поддерживается, илиНовая MH , который до сих пор активно поддерживается.

Я не думаю, что древний mhможет обрабатывать Maildir/почтовые ящики, но nmhопределенно может.

nmhупакован как nmhв Debian и, вероятно, в большинстве других дистрибутивов.

3
28.07.2021, 11:32

reformime — это команда (из пакета maildropв Debian/Ubuntu ), которую можно использовать для извлечения тела файла электронной почты.

Вы можете получить список частей MIME с помощью reformime -i <your-message, что даст вам что-то вроде

section: 1
content-type: multipart/alternative
content-transfer-encoding: 8bit
charset: UTF-8
content-language: en-GB
starting-pos: 0
starting-pos-body: 2494
ending-pos: 75170
line-count: 1287
body-line-count: 1241

section: 1.1
content-type: text/plain
content-transfer-encoding: 8bit
charset: utf-8
starting-pos: 2578
starting-pos-body: 2666
ending-pos: 8180
line-count: 181
body-line-count: 178

section: 1.2
content-type: multipart/related
content-transfer-encoding: 8bit
charset: UTF-8
starting-pos: 8220
starting-pos-body: 8303
ending-pos: 75128
line-count: 1054
body-line-count: 1051

section: 1.2.1
content-type: text/html
content-transfer-encoding: 8bit
charset: utf-8
starting-pos: 8343
starting-pos-body: 8415
ending-pos: 25276
line-count: 343
body-line-count: 340

И затем вы можете извлечь раздел с помощью reformime -e -s 1.1, например. это извлечет текстовую версию (1.1 ). Аналогично, если раздел 1.2.3 является изображением, вы можете просмотреть его какreformime -e -s 1.2.3 <mail.eml | display :-

Так что, если вы просто хотите увидеть текстовую версию, вы можете "легко" сделать это с помощью удобного -лайнера:

F=/path/to/the-email-file
reformime -e -s $(reformime -i <$F | fgrep -B1 'content-type: text/plain' | head -n1 | cut -c 10- ) <$F

Это не совсем простой вариант, который я надеялся найти, но все же решил задокументировать его!

2
28.07.2021, 11:32

Теги

Похожие вопросы