如何使用linux mail命令在电子邮件中插入新行?
echo "Hi xxx, would you tell me something?\\n thanks!\\n -xxx" | mail -s "subject" xxx@gmail.com
电子邮件显示字面'\ n',而不是换行符,如何解决?
答案 0 :(得分:31)
尝试使用echo -e
echo -e "Hello \n World"
您可以从命令行键入man echo
以阅读更多内容。
答案 1 :(得分:12)
使用mailx,如果您将电子邮件发送给Outlook用户,则可以在每行的开头添加2个空格。
{ echo "Hi xxx, would you tell me something" ; echo "thanks!" ; echo "-xxx" } | sed 's/^/ /g' | mailx -s "subject" xxx@domain.com
答案 2 :(得分:2)
我遇到了这个问题并通过引用我引用mailx
的变量引用来解决它。
我从ps开始,即list="$(ps |grep some_process)"
。
然后当我尝试按如下方式邮寄时,新线被删除了:
echo $body | mailx -s "${subject}" recipient@someplace.com
但是,简单地用引号括起$body
会保留换行符:
echo "$body" | mailx -s "${subject}" recipient@someplace.com
答案 3 :(得分:1)
使用mail命令时,接受的答案对我不起作用,我必须使用
\r
我的整个命令是
mail -s "SUBJECT" -aFrom:"from@sdf.com "to@sdfd.com" <<< $( echo -e "Line1\rLine2")
答案 4 :(得分:0)