シェルスクリプトを使用してテーブル形式で電子メールを送信する方法を説明できる人はいますか? [コピー]

シェルスクリプトを使用してテーブル形式で電子メールを送信する方法を説明できる人はいますか? [コピー]

従業員情報:

Name    Age   DOB
______  ___   _________
Jones   54    06/12/1998 
Allen   50    06/09/1990

上記の出力を表で見たいです。

ベストアンサー1

RalfFriedlが提案したように使用してくださいhtml

<table>
  <tr>
    <th>Name</th>
    <th>Age</th>
    <th>DOB</th>
  </tr>
  <tr>
    <td>Jones</td>
    <td>54</td>
    <td>06/12/1998</td>
  </tr>
  <tr>
    <td>Allen</td>
    <td>50</td>
    <td>06/09/1990</td>
  </tr>
</table>

このようなものを使用してHTMLメールを送信するには、sendmailhtmlメールヘッダーが必要です。これを行うには、一時ファイルを使用して次のようにコンテンツを保存します。

[email protected]
[email protected]
mailsub='This is the subject of my email'
curdate=$(date "+%a, %d %b %Y %H:%M:%S %z")
html_header="From: <${mailfrom}>\nTo: <${mailto}>\nSubject: ${mailsub}\nDate: <${curdate}>\nContent-Type: text/html; charset=utf-8\n"
echo -e "$html_header" > tmp_file

これにより、次のようなヘッダーが生成されます。

From: <[email protected]>
To: <[email protected]>
Subject: This is the subject of my email
Date: <Sun, 12 Aug 2018 12:30:17 +0000>
Content-Type: text/html; charset=utf-8

その後、ファイルにテーブルを追加し、cat tmp_file | mail -t

おすすめ記事