从mailx到outlook的电子邮件,html文件视图已损坏

时间:2010-11-24 17:32:48

标签: html unix scripting shell html-parsing

问题是当通过mailx将一个html文件发送到outlook作为附件时,文件的格式保持良好(通过Internet Explorer打开)但是当我以邮件形式发送它作为正文(在Outlook中打开)然后outlook 2007视图中的格式更改。如何避免?

我使用两个函数从日志文件创建htlm文件,解析器函数正在读取日志文件,因此它正在创建.html文件然后我使用下面定义的函数发送邮件发送展望中的邮件。

我的功能是

 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
}

1 个答案:

答案 0 :(得分:0)

您是否尝试将文件复制到Windows框并在IE中打开?