回答
只需使用formail
。 formail
是一個程序,可以處理郵箱,對郵箱中的每封郵件執行一些操作,分離郵件等。
更多信息:http://www.manpagez.com/man/1/formail/
如果你只想分割郵箱單獨的文件, 我建議這樣的解決方案:
$ cat $MAIL | formail -ds sh -c 'cat > msg.$FILENO'
從人:
FILENO
While splitting, formail assigns the message number currently
being output to this variable. By presetting FILENO, you can
change the initial message number being used and the width of the
zero-padded output. If FILENO is unset it will default to 000.
If FILENO is non-empty and does not contain a number, FILENO gen-
eration is disabled.
如果你想分割不是每個郵件而是每個文件大小,那麼你將如何使用bash和formail來做到這一點,以便最大值爲n mb每個分割生成? – Alex
'formail'是我機器上的procmail('apt-get install procmail')的一部分。 –
如果你不沒有formail,你也可以使用這個Perl oneliner(複製從here,並剛剛在我需要的Thunderbird收件箱中測試拆分)
perl -pe 'open STDOUT, ">out".++$n if /^From /' < $IN > before_first
,或者有填充0號:
perl -pe 'open STDOUT, sprintf(">m%05d.mbx", ++$n) if /^From /' < $IN > before-first
的Git可以做到這一點爲好,例如
wget ftp://lists.gnu.org/bug-tar/2014-09
git mailsplit -o. 2014-09
對於我的郵箱(通過谷歌外賣從Gmail中導出),這個錯誤與'腐敗郵箱'出錯了。這似乎是由於來自'from 153543865244474185 @ xxx Fri May 27 12:18:45 +0000 2016'的時區標記引起的,perl方式雖然工作正常。 –
- 1. 如何將單個Node.js文件拆分爲單獨的模塊
- 2. 將單個文件拆分爲多個文件
- 3. 如何將ANTLR語法文件拆分爲多個文件
- 4. 將文件拆分爲C++
- 5. 將文件拆分爲塊
- 6. 將applicationContext拆分爲多個文件
- 7. 將XML拆分爲多個xml文件
- 8. 將XSLT拆分爲多個HTML文件
- 9. 將路線拆分爲多個文件
- 10. 將xpo拆分爲多個xpo文件
- 11. 將活動拆分爲多個文件
- 12. Grails - 將Config.groovy拆分爲多個文件
- 13. 將views.py拆分爲多個文件
- 14. 如何將此Coffeescript拆分爲單獨的文件?
- 15. 如何將模板拆分爲Meteor中的單獨文件
- 16. 如何將CA證書包拆分爲單獨的文件?
- 17. 如何將快速路由器拆分爲單獨的文件?
- 18. 如何將模塊的代碼拆分爲單獨的文件
- 19. 如何在python中將文件拆分爲單獨的行?
- 20. 如何將UITextField的文本拆分爲單個字符
- 21. 如何將分隔符上的文本文件拆分爲多個文件?
- 22. 如何將數據文件拆分爲多個部分以及每個拆分文件中的註釋?
- 23. 如何使用Oxygen中的XSLT將單個XML文件拆分爲3個JSON
- 24. 將文件拆分爲文件夾
- 25. 將csv文件拆分爲單列文本文件
- 26. 如何將文本文件拆分爲C中的部分?
- 27. 將單個列拆分爲多個列
- 28. 文本操作將單個文件中的類拆分爲多個文件
- 29. 如何將vue中的dev-server.js文件拆分爲幾個分離的文件?
- 30. 將csv文件拆分爲多個部分,複製頭文件
如果您正在使用MBOX,[這]( http://www.qmail.org/man/man5/mbox.html)可以提供幫助。並且[this](http://linuxcommand.org/man_pages/formail1.html) – hamed