0
我寫了下面的代碼:語法錯誤:在shell腳本文件意外結束
. smtp.config
SEND_MAIL(){
cat $BODY |mailx -s "report_`date '+%Y%m%d%H%s'`" $TO_LIST -c $CC_LIST << $REPORTS_PATH ;
};
if [ ${#REPORTS_PATH[@]} -gt 0 ] then
SEND_MAIL;
echo MAIL SENT : `date` >> $LOG_FILE ;
mkdir $REPORTS_ARCHIVE/report_`date '+%Y%m%d%H%s'` ;
mv $REPORTS_PATH/* $REPORTS_ARCHIVE/report_`date '+%Y%m%d%H%s'` ;
echo done ;
fi
當我運行該腳本,它給了我:
./mail.sh: line 13: syntax error: unexpected end of file
另一件事是我可以用另一個語法替換這部分:if [ ${#REPORTS_PATH[@]} -gt 0 ]
(這部分我用來檢查目錄是否包含文件或空的。
請看:http://www.shellcheck.net/ – Cyrus 2014-10-22 08:53:55
感謝,但還是它給人意外的文件結尾沒有修復 – 2014-10-22 09:02:34
刪除'$ << REPORTS_PATH'。 – Cyrus 2014-10-22 09:11:19