2010-11-24 7 views
0

문제는 첨부 파일로 Outlook Express에 mailx를 통해 html 파일을 보내면 파일 형식이 양호하게 유지되지만 (Internet Explorer에서 열림) 메일이 본문으로 열리면 (Outlook에서 열림) Outlook 2007보기에서 형식이 변경됩니다. 어떻게 피하는거야?mailx에서 outlook으로 전자 메일, html 파일보기가 손상됨

로그 파일에서 htlm 파일을 만드는 데 사용하는 두 가지 함수가 있습니다. 파서 함수가 로그 파일을 읽고 이에 따라 .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 
} 
+0

감사합니다. Dave 님, 글을 제대로 편집 할 수 없었습니다. 시도했지만 표시가 가능하도록 성공하지 못했습니다. 고마워요 – Kimi

+1

심각하게,이'{echo "foo"... 많은 줄 ... echo "bar"; }> "$ Staglog_Html"'. 문제를 해결할 수는 없지만 많은 일을 단순화합니다 (처음에는 'rm'을 제거 할 수 있습니다). 해당 tl; dr의 중간에있는 다른 출력을 수행해야하는 경우 해당 예외에 대해 파일이나 파일 설명자로 명시 적으로 리디렉션 할 수 있습니다. 또한 이러한 변수를 내보낼 필요도 없습니다. –

+1

"echos"대신 here-doc을 사용하는 것도 좋습니다. 또한 중복 된 코드가 많은 것 같지만 질문 게시 오류 일 수 있습니다. 그런데 형식이 어떻게 바뀌는 지 절대 말하지 않습니다. –

답변

0

당신이 IE에서 윈도우 상자 열면에 파일을 통해 복사를 시도해 봤어입니까?

+0

안녕하세요 sridhar, 나는 그것이 지금은 Outlook에서 읽을 수있는 HTML 파일에 몇 가지 변경 사항을 만들었습니다. – Kimi