什么是最简单的,最好是最便携的命令我可以使用电子邮件作为附件一个单一的文件* nix壳?
假设这是一个二进制附件:
uuencode [文件名] [文件名] | mail -s [主题] [收件人地址]
如果只是一个文本文件,你不需要打扰UUencoding,例如:
mail -s [主题] [收件人地址] <[文件名]
大多数* NIX有邮件和uuencode,所以这应该在几乎任何地方工作。
使用mutt,你可以:
mutt -z -a <file> -s <subject> -- [email protected]
或者,如果您不想input正文:
mutt -z -a <file> -s <subject> -- [email protected] < /dev/null
“ sendEmail是一个轻量级的命令行SMTP电子邮件客户端,如果您需要从命令行发送电子邮件,这个免费程序是完美的:易于使用和function丰富,它被devise用于bash脚本,batch file,Perl程序和网站,但是适应性很强,可能会满足你的要求,SendEmail是用Perl编写的,它的独特之处在于它不需要模块,它有一组直观而灵活的命令行选项,非常容易学习和使用[支持的平台:Linux,BSD,OS X,Windows 98,Windows NT,Windows 2000和Windows XP]“
我以前用过它,真的很喜欢它。 您可以使用-a选项附加文件。
我不能添加评论,但..
mailx
派生(如果有的话)。 uuencode
pipe道在技术上不会产生带有附件的邮件。 看看你收到的电子邮件的来源,看看为什么。 如果您想要绝对的便携性,您可以通过端口25远程login到邮件服务器,并直接发出SMTP命令。 他们不是很难,而且应该是非常可写的。
快速的谷歌翻开了这个页面 ,它描述了使用各种应用程序附加文件的各种方法。 一些更普遍的 –
uuenc8de做一个内联“附件”。
metamail -f file-to-attach -m mime-type
mpack -c mime-type file-to-attach
mutt -a file-to-attach
Elm -A file-to-attach
此外,它还链接到一些 shell脚本和一个Perl脚本来编写和发送消息,这可能更符合您的喜好。
几年前,我写了一个shell脚本,就是这样做的。 它被称为binmail.sh。 它使用了一个base64编码器(许多源代码可以在谷歌上find),并根据RFC1521build立了附件。
或者,如果你有python可用,它将只需要几行,如在这里列出: 在python发送附件
echo "Email body text" | mail -s "Subject of email" -a file.to.attach.txt [email protected]