如何在Linux中将txt文件内容用作邮件主题?
我有一个定时任务文件,它会执行一个下面的shell脚本。
27 11 * * * /usr/python/bi_python/launcher/launch_script_leds.sh
这个shell脚本做了几件事情:
1) 执行一个叫做launcher.py的python脚本,这个脚本会运行测试并把结果输出到日志文件。
2) 当测试完成后,它会发送邮件通知,邮件的内容是测试的输出结果。
在这个.sh文件里的命令是:
mail me@sample.com < /usr/python/bi_python/launcher/test_output.txt
这个命令运行得很好,但邮件的主题是空的。
邮件的主题是从launcher.py输出到一个叫subject.txt的文本文件里的内容。我想知道有没有办法把这个文件的内容作为邮件的主题呢?
我知道可以用mail -s来指定主题,但因为通过launcher运行了很多测试,主题的内容会一直变化。
提前谢谢你们的帮助!
2 个回答
0
好吧,只需要在邮件命令中加上参数 -s
,后面跟上合适的主题。
如果想用文件里的内容作为主题,只需读取这个文件。在 Bash 中,
filecontents=$(cat /my/file)
这段代码会把 /my/file 文件里的内容读到变量 filecontents
里。然后你可以根据需要对文本进行截断或清理,最后把它用作 -s
的参数。
3
试试看
subject=$(</path/subject.txt)
mailx -s "$subject" me@sample.com < /usr/python/bi_python/launcher/test_output.txt