次のDISCUSコマンド出力を取得するには:
HTMLメールに優しいコンテンツに変換しますか?私は次のようなbashスクリプトを書いた。
#!/bin/sh
discus > /tmp/discus.log
touch /tmp/diskchart.log
echo "To: [email protected]" > /tmp/diskchart.log
echo "Subject: Weekly Disk Report" >> /tmp/diskchart.log
echo "MIME-Version: 1.0" >> /tmp/diskchart.log
echo "Content-Type: text/html; charset=\"us-ascii\"" >> /tmp/diskchart.log
echo "Content-Disposition: inline" >> /tmp/diskchart.log
echo "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">" >> /tmp/diskchart.log
echo "<html>" >> /tmp/diskchart.log
echo "<div>" >> /tmp/diskchart.log
cat /tmp/discus.log | grep / | grep -v run | /usr/bin/awk '{print $1}{print $9}' >> /tmp/diskchart.log
echo "</div>" >> /tmp/diskchart.log
echo "</html>" >> /tmp/diskchart.log
mail -s "SAT Weekly Disk Report" [email protected] < /tmp/diskchart.log
#rm /tmp/discus.log /tmp/diskchart.log
ただし、これにより次の出力が生成されます。
実際のメッセージに表示されるエスケープ文字を処理する方法を知っている人はいますか?理想的には上記のような棒グラフを見たいです。 Ubuntu 12.04.1 LTSを実行しています。
ベストアンサー1
使用できるアハ(一部のLinuxディストリビューションにもパッケージされています)ANSIシェーディングシーケンスをHTMLに変換します。
#! /bin/sh -
sendmail -t -oi << EOF
To: [email protected]
Subject: Weekly Disk Report
MIME-Version: 1.0
Content-Type: text/html; charset="us-ascii"
Content-Disposition: inline
$(discus | aha)
EOF