通过电子邮件发送了“cat'删除随机空格和换行符

时间:2016-01-27 15:43:23

标签: linux bash shell

第一次在这里发帖。
我有以下文件和内容:

linux$ cat file.txt    
line 1
line 2
line 3
line 4

我有以下代码:

Output=$(cat file.txt)
echo "$Output" | mail -s "[Test]" -a test.txt host@domain.com

我将文件本身作为附件发送以进行调试。 我遇到的问题是包含' cat file.txt'的输出的电子邮件正文。看起来像这样:

  

第1行   第2行   3行4

附件包含正确格式化的输出' cat file.txt',不添加或删除字符,换行符,空格。

可能导致这种情况的原因是什么? 感谢您的帮助!

1 个答案:

答案 0 :(得分:-1)

我认为您可能需要指定您的电子邮件内容应以何种格式发送。

UTF-8是一个很好的选择,因为它几乎遍布世界。

这可能会有所帮助:

  

cat file.txt | mail -s'$(echo -e“Test \ nContent-Type:text / html”)' - a test.txt host@domain.com

或使用charset

  

cat file.txt | mail -s'$(echo -e“Test \ nContent-Type:text / html; charset =”us-ascii“)' - a test.txt host@domain.com

或没有UNIX管道

  

mail -a'Content-type:text / plain; charset =“us-ascii”'foo@bar.com< file.txt的

可以找到更多信息here

这实际上取决于邮件的版本。

希望这可能会有所帮助