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}')

看了下 l i n e 这 个 变 量 , 在 一 些 情 况 下 并 没 有 那 么 多 字 段 , 上 面 命 令 要 求 单 个 line这个变量,在一些情况下并没有那么多字段,上面命令要求单个 lineline至少有14个字段,如果没有就会报错。
以后代码还是要做足够的容错,保不齐啥时候外接的输入就起变化了,切切。

你可能感兴趣的:(Linux,物联网)