我有一个cron作业,它生成一个资源列表,到期日期和到期前的天数.该报告生成CSV文件.我使用mutt -a report.csv将其附加到消息中.
我还想在电子邮件正文中包含信息.我使用gawk将其格式化为简洁的线条并将其添加到正文中.它看起来像这样:
Resource Expiration Date Days ======================================== ========================= ======== resource one Oct 11 2009 07:59 PM 3 resource two Nov 3 2009 07:59 PM 22 resource three has a longer name Nov 6 2009 07:59 PM 28 rscrc 4 Dec 8 2009 07:59 PM 58 you get the point Dec 17 2009 07:59 PM 66 www.blockbuster1.smartsubs.net Dec 23 2009 07:59 PM 70
(是的,我捏造了日期和过期,他们在这个例子中没有加起来)
问题是大多数收件人没有将其电子邮件客户端配置为使用固定宽度字体显示纯文本电子邮件.所以,对他们来说,它看起来像这样:
Resource Expiration Date Days
======================================== ========================= ========resource one Oct 11 2009 07:59 PM 3
resource two Nov 3 2009 07:59 PM 22
resource three has a longer name Nov 6 2009 07:59 PM 28
rscrc 4 Dec 8 2009 07:59 PM 58
you get the point Dec 17 2009 07:59 PM 66
www.blockbuster1.smartsubs.net Dec 23 2009 07:59 PM 70
是否有关于如何在电子邮件中轻松格式化此文本以便强制使用固定宽度字体的建议?我可以灵活地在此服务器上安装新的命令行工具
解决方法
如果你有一个最新版本的mutt,我相信你可以做这样的事情.
mutt -e 'set content_type="text/html"' -a file.csv user@example.org -s "subject" < index.html
index.html将是您邮件的html正文.