通过电子邮件发送多个文件,并在电子邮件中添加正文消息(Unix Korn Shell)
我试图通过电子邮件发送多个文件,但也在电子邮件中包含一条正文消息,我尝试了几种方法,但没有成功,以下代码用于发送多个文件:通过电子邮件发送多个文件,并在电子邮件中添加正文消息(Unix Korn Shell),shell,file,email,unix,mailx,Shell,File,Email,Unix,Mailx,我试图通过电子邮件发送多个文件,但也在电子邮件中包含一条正文消息,我尝试了几种方法,但没有成功,以下代码用于发送多个文件: (uuencode file1.txt file1.txt;uuencode file2.txt file2.txt)| mailx-s“测试”email@test.com 我尝试过这个选项,但运气不佳: echo“这是正文消息”|(uuencode file1.txt file1.txt;uuencode file2.txt file2.txt)| mailx-s“测试”
(uuencode file1.txt file1.txt;uuencode file2.txt file2.txt)| mailx-s“测试”email@test.com
我尝试过这个选项,但运气不佳:
echo“这是正文消息”|(uuencode file1.txt file1.txt;uuencode file2.txt file2.txt)| mailx-s“测试”email@test.com
知道代码是怎么回事吗?试试这个:
(echo "This is the body message"; uuencode file1.txt file1.txt; uuencode file2.txt file2.txt) | mailx -s "test" email@test.com
您的命令的问题是,您正在将echo
的输出管道化到子shell中,并且由于uuencode
没有从stdin读取,因此它被忽略
您可以使用{…}
来避免子shell:
{ echo "This is the body message"; uuencode file1.txt file1.txt; uuencode file2.txt file2.txt; } | mailx -s "test" email@test.com
如果您在脚本中执行此操作,并且希望它看起来更可读,那么:
{
echo "This is the body message"
uuencode file1.txt file1.txt
uuencode file2.txt file2.txt
} | mailx -s "test" email@test.com