一段时间以来,我发现当我尝试在浏览器中查看 HTML 文件时(来自 Mutt,v要查看所有附件,请选择text/html
附件,然后enter),我的浏览器会打开一个新选项卡,file:///tmp/mutt.html
但始终显示
文件未找到
Firefox 在 /tmp/mutt.html 中找不到该文件。
检查文件名的大小写或其他输入错误。检查文件是否被移动、重命名或删除。
我不太确定如何解决这个问题。它工作得很好,直到它没有。然后只是为了让我每 10 次或 12 次保持警觉,它会随机显示 HTML 邮件。
比如,刚才,我...
- 试图查看 HTML 电子邮件,
- 决定我要最终解决这个问题,
- 开始撰写这个问题的前 2/3,
- 打开第二个终端选项卡
/var/log/
查看是否有明显的日志文件可供查看 - 跑了
tail -f /var/log/syslog
- 在 tail follow 运行的情况下,返回尝试再次查看 HTML 电子邮件,只是为了查看是否有任何内容写入 syslog(尽管我认为不会)并且 a) 没有任何内容写入 syslog,b) 相同的电子邮件实际上确实在浏览器选项卡中打开得很好。
所以......我应该在哪里寻找一些迹象,说明为什么 mutt html 消息有时在浏览器中打开得很好,有时/tmp/mutt.html
却找不到?
我也遇到了一些麻烦。text/html 的 mailcap 条目是要查看的重点。有了铬,它确实是
needsterminal
一面旗帜。对于 Firefox 来说,copiousoutput
flag 起到了作用。如果您还没有自定义 mailcap,您可以在
~/.mailcap
例如创建一个文件并将 firefox 行添加到其中。不要忘记在您的.muttrc
也许这是 Firefox 命令行返回 mutt 和 mutt 在 Firefox 进程实际读取文件之前删除临时文件之间的竞争条件。
尝试在您的 mailcap 条目中添加
needsterminal
标志。或者甚至更好,而不是直接调用 Firefox,而是调用你的一个简单的 shell 脚本,该脚本用另一个名称复制 html 文件,然后在该新文件上调用 Firefox,然后将命令返回给 mutt(这将删除原始文件)。
有些人
sleep
调用firefox后添加命令。例如,请参见此处或此处(搜索sleep
)。