sh腳本報錯“eval: line 1: syntax error: unterminated quoted string”

有個之前一直正常運行的腳本,突然報錯了

eval: line 1: syntax error: unterminated quoted string

提示也比較直接eval使用出的問題,過濾一下腳本內容,果然找到了一個疑似問題代碼:

eval $(echo $line 2>/dev/null |awk '{print "iosOs="$13";iosDev="$14}')

看了下lineline這個變量,在一些情況下並沒有那麼多字段,上面命令要求單個line至少有14個字段,如果沒有就會報錯。
以後代碼還是要做足夠的容錯,保不齊啥時候外接的輸入就起變化了,切切。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章