[問題] 用shellscript發信的問題

看板Linux作者 (...)時間10年前 (2014/01/22 21:44), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
各位好,我也是位linux的新手 本來有一個發送信件的函數寫這樣: function mail2op { scp -q ./checkresults/$MAILFILE $MAILSRVIP:/tmp/$MAILFILE ssh $MAILSRVIP "mail $EMAIL -s \"$SUBJECT\" < /tmp/$MAILFILE" ssh $MAILSRVIP rm -f /tmp/$MAILFILE } 宣告變數的部分我就省略掉, 寫這樣原本是可以正常執行的, 但是因為某些原因所以導致需要用echo的方式將charset=big5帶入mail header, 否則會造成發出的中文信件標題和內容都出現亂碼。 我改成以下: function mail2op { scp -q ./checkresults/$MAILFILE $MAILSRVIP:/tmp/$MAILFILE #ssh $MAILSRVIP "mail $EMAIL -s \"$SUBJECT\" < /tmp/$MAILFILE" ssh $MAILSRVIP "mail $EMAIL -s $(echo -e \"$SUBJECT\nContent-Type:text/html; charset=big5)" < /tmp/$MAILFILE" ssh $MAILSRVIP rm -f /tmp/$MAILFILE } 但是改成這樣之後執行會出現以下錯誤訊息 line 109: unexpected EOF while looking for matching `"' line 119: syntax error: unexpected end of file 但是看了半天沒有看出錯在哪裡, 不知道誰可以幫看一下... 感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.24.131.228 ※ 編輯: pizzahut 來自: 114.24.131.228 (01/22 21:47)

01/22 22:11, , 1F
$要escape 不然會在送出前就被本地shell解析掉
01/22 22:11, 1F
※ 編輯: pizzahut 來自: 114.24.131.228 (01/22 22:29)

01/24 00:44, , 2F
我猜是這個: big5)" <- 看看是不是該改成big5)\"
01/24 00:44, 2F
文章代碼(AID): #1ItyjHAm (Linux)