문제는 첨부 파일로 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
}
감사합니다. Dave 님, 글을 제대로 편집 할 수 없었습니다. 시도했지만 표시가 가능하도록 성공하지 못했습니다. 고마워요 – Kimi
심각하게,이'{echo "foo"... 많은 줄 ... echo "bar"; }> "$ Staglog_Html"'. 문제를 해결할 수는 없지만 많은 일을 단순화합니다 (처음에는 'rm'을 제거 할 수 있습니다). 해당 tl; dr의 중간에있는 다른 출력을 수행해야하는 경우 해당 예외에 대해 파일이나 파일 설명자로 명시 적으로 리디렉션 할 수 있습니다. 또한 이러한 변수를 내보낼 필요도 없습니다. –
"echos"대신 here-doc을 사용하는 것도 좋습니다. 또한 중복 된 코드가 많은 것 같지만 질문 게시 오류 일 수 있습니다. 그런데 형식이 어떻게 바뀌는 지 절대 말하지 않습니다. –