首页 > 解决方案 > 通过 shell 输出表格格式

问题描述

我有如下脚本输出

dev1 FAIL
dev2 PASS
revion4 PASS
secor4 PASS

现在我需要通过邮件以表格格式发送此输出。我尝试了以下代码:

input="file.txt"
tmpfile="tmpfile.html"

echo 'Content-Type: text/html; charset="us-ascii" ' > "$tmpfile"
awk 'BEGIN{print "<html><body><table border=1>"} {print "<tr>";for(i=1;i<=NF;i++)print "<td>" $i"</td>";print "</tr>"} END{print "</table></body></html>"}' "$input" >> "$tmpfile"
mail -s "test" abcd@domain.com < "$tmpfile" 

以下是我在邮件中收到的输出。

Content-Type: text/html; charset="us-ascii"
<html><body><table border=1>
<tr>
<td>dev1</td>
<td>PASS</td>
</tr>
<tr>
<td>dev2</td>
<td>PASS</td>
</tr>
<tr>
<td>revision4</td>
<td>FAIL</td>
</tr>
<tr>
<td>sector6</td>
<td>PASS</td>
</tr>
</table></body></html>

预期输出:

输出

标签: bashshellemailhtml-emailemail-attachments

解决方案


推荐阅读