問題は、添付ファイルとしてOutlook Expressにhtmlファイルを送信しても、ファイルの形式が良好なままである(インターネットエクスプローラで開く)が、メールを本文として開くと(Outlookで開く)、Outlook 2007のビューで形式が変更されます。それを避ける方法は?mailxからoutlookへのhtmlファイルの表示が壊れている
ログファイルからhtlmファイルを作成するために使用する関数は2つあります。パーサ関数はログファイルを読み込んでいます。したがって、.htmlファイルを作成しています。 Outlookでメールを送信します。
私の関数は
parser()
{
export Staglog=./StagingTool1.7.4.log
export Staglog_Html=./StagingTool1.7.4.log.html
rm -f $Staglog_Html
echo "<html>" >> $Staglog_Html
echo "<head>" >> $Staglog_Html
echo "<style type="text/css">" >> $Staglog_Html
echo ".font_orange_bold_large" >> $Staglog_Html
echo "{" >> $Staglog_Html
echo "color: #FF9900;" >> $Staglog_Html
echo "font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;" >> $Staglog_Html
echo "font-size: 17px;" >> $Staglog_Html
echo "font-style: normal;" >> $Staglog_Html
echo "font-weight: bold;" >> $Staglog_Html
echo "text-align: center;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo ".table_heading_darkblue_white_center" >> $Staglog_Html
echo "{" >> $Staglog_Html
echo "background-color: #256B9C;" >> $Staglog_Html
echo "color: #FFFFFF;" >> $Staglog_Html
echo "font-family: Arial, Helvetica, sans-serif;" >> $Staglog_Html
echo "font-size: 12px;" >> $Staglog_Html
echo "font-weight: bold;" >> $Staglog_Html
echo "text-align: center;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo ".table_cell_grey" >> $Staglog_Html
echo "{" >> $Staglog_Html
echo "background-color: #6DA2D7;" >> $Staglog_Html
echo "color: #FFFFFF;" >> $Staglog_Html
echo "font-family: Arial, Helvetica, sans-serif;" >> $Staglog_Html
echo "font-size: 12px;" >> $Staglog_Html
echo "font-weight: bold;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo ".font_white_bold_normal" >> $Staglog_Html
echo "{" >> $Staglog_Html
echo "color: #FFFFFF;" >> $Staglog_Html
echo "font-family: Verdana, Arial, Helvetica, sans-serif;" >> $Staglog_Html
echo "font-size: 11px;" >> $Staglog_Html
echo "font-style: normal;" >> $Staglog_Html
echo "font-weight: bold;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo ".font_normal" >> $Staglog_Html
echo "{" >> $Staglog_Html
echo "color: #000000;" >> $Staglog_Html
echo "font-family: Verdana, Arial, Helvetica, sans-serif;" >> $Staglog_Html
echo "font-size: 12px;" >> $Staglog_Html
echo "font-style: normal;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo "</style>" >> $Staglog_Html
echo "</head>" >> $Staglog_Html
echo "<body><table width=90% border=0 cellspacing=0 cellpadding=3 align=center>" >> $Staglog_Html
echo "<tr><td colspan=2><font face=verdana size=5 color=#999999>amdocs | </font><font face=verdana size=5>TELUS</font></td></
tr>" >> $Staglog_Html
echo "<tr bgcolor=#6DA2D7><td colspan=2 height=13></td></tr>" >> $Staglog_Html
echo "<tr bgcolor=#256B9C class=font_white_bold_normal><td align=left height=30>2010-05-01 07:00:00 thru 2010-05-01 07:59:59<
/td><td align=right>Staging Tool</td></tr>" >>$Staglog_Html
echo "<tr><td colspan=2 class=font_orange_bold_large>Status Report</td></tr>" >> $Staglog_Html
cat $Staglog | while read line
do
data=1
startField=`echo $line |cut -c 1`
if [ $startField = "#" ]
then
line1=`echo $line|sed 's/#//g'`
echo '<table width=80% border=1 cellspacing=0 cellpadding=3 align=center style="border-collapse: collapse" bo
rdercolor=black>' >> $Staglog_Html
echo "<tr class=table_heading_darkblue_white_center><td align=left>$line1</td>" >> $Staglog_Html
data=0
fi
if [ `echo $line | cut -c 1` = \| ]
then
line1=`echo "$line" | awk -F"|" {'print $2'}`
echo "font-style: normal;" >> $Staglog_Html
echo "}" >> $Staglog_Html
echo "</style>" >> $Staglog_Html
echo "</head>" >> $Staglog_Html
echo "<body><table width=90% border=0 cellspacing=0 cellpadding=3 align=center>" >> $Staglog_Html
echo "<tr><td colspan=2><font face=verdana size=5 color=#999999>ABC| </font><font face=verdana size=5>XZY</font></td></
tr>" >> $Staglog_Html
echo "<tr bgcolor=#6DA2D7><td colspan=2 height=13></td></tr>" >> $Staglog_Html
echo "<tr bgcolor=#256B9C class=font_white_bold_normal><td align=left height=30>2010-05-01 07:00:00 thru 2010-05-01 07:59:59<
/td><td align=right>Staging Tool</td></tr>" >>$Staglog_Html
echo "<tr><td colspan=2 class=font_orange_bold_large>Status Report</td></tr>" >> $Staglog_Html
cat $Staglog | while read line
do
data=1
startField=`echo $line |cut -c 1`
if [ $startField = "#" ]
then
line1=`echo $line|sed 's/#//g'`
echo '<table width=80% border=1 cellspacing=0 cellpadding=3 align=center style="border-collapse: collapse" bo
echo "<tr bgcolor=#256B9C class=font_white_bold_normal><td align=left height=30>2010-05-01 07:00:00 thru 2010-05-01 07:59:59<
/td><td align=right>Staging Tool</td></tr>" >>$Staglog_Html
echo "<tr><td colspan=2 class=font_orange_bold_large>Status Report</td></tr>" >> $Staglog_Html
cat $Staglog | while read line
do
data=1
cat $Staglog | while read line
do
data=1
startField=`echo $line |cut -c 1`
if [ $startField = "#" ]
then
line1=`echo $line|sed 's/#//g'`
echo '<table width=80% border=1 cellspacing=0 cellpadding=3 align=center style="border-collapse: collapse" bo
rdercolor=black>' >> $Staglog_Html
echo "<tr class=table_heading_darkblue_white_center><td align=left>$line1</td>" >> $Staglog_Html
data=0
fi
if [ `echo $line | cut -c 1` = \| ]
then
line1=`echo "$line" | awk -F"|" {'print $2'}`
IFS=","
set -A col_arr $line1
count=0
echo '<table width=70% border=1 cellspacing=0 cellpadding=3 align=center style="border-collapse: collapse" bo
rdercolor=black>' >> $Staglog_Html
echo "<tr class=table_heading_darkblue_white_center>" >> $Staglog_Html
while [ $count -lt ${#col_arr[*]} ]
do
echo "<td>${col_arr[$count]}</td>" >> $Staglog_Html
count=$(($count+1))
done
data=0
fi
if [ `echo $line | cut -c 1` = - ]
then
echo "</table>" >> $Staglog_Html
data=0
fi
if [ $data -eq 1 ]
then
IFS=","
set -A data_arr $line
count=0
echo "<tr>" >> $Staglog_Html
while [ $count -lt ${#data_arr[*]} ]
do
echo "<td>${data_arr[$count]}</td>" >> $Staglog_Html
count=$(($count+1))
done
echo '</tr>' >> $Staglog_Html
fi
unset IFS
done
echo "</table>" >> $Staglog_Html
echo "</html>" >> $Staglog_Html
}
sendMail()
{
export EMAIL_DISTRIBUTION_LIST="`cat StagingValidationToolEmailList.lst 2>/dev/null`"
echo "Sending Mail "
echo $EMAIL_DISTRIBUTION_LIST
parser
if [ -s $Staglog_Html ]
then
( echo "Subject:"STAGING Status""
echo "MIME-Version: 1.0"
echo "Content-Type: text/html"
echo "Content-Disposition: inline"
echo "From:Staging Status Mail"
cat $Staglog_Html
) | /usr/sbin/sendmail $EMAIL_DISTRIBUTION_LIST
fi
}
Daveさん、投稿を正しく編集できませんでした。試してみましたが、見栄えを良くするためには成功しませんでした。大変ありがとうございます – Kimi
真剣に、この '{echo" foo "...多くの行... echo" bar "; }> "$ Staglog_Html" 'あなたの問題を解決することはできませんが、それは非常に簡単になります(そして最初に 'rm'を削除することもできます)。そのすべてのtl; drの途中で何らかの出力を行う必要がある場合は、その例外に対してファイルまたはファイル記述子への明示的なリダイレクトを使用できます。また、これらの変数をエクスポートする必要はありません。 –
これらの 'echos'のすべてではなく、here-docの使用を検討することもできます。また、重複したコードがたくさんあるようですが、質問を投稿する際にエラーが発生する可能性があります。ちなみに、フォーマットがどのように変化するかは決して決して言いません。 –