-1

句法:

while read l
do
    export filename=$l
    if [[ `echo $filename | sed -n 's:TEST.*/TEST:&:p'` -ne 0 ]];
    then
        echo "both are same : $filename"
    else
        echo "diff: $filename"
    fi
done < scripts2.txt*

问题:通常它工作正常。但是对于以下数据,它会引发语法错误......

<TEST><![BIGDATA[$EXECUTE SCRIPT ON ALL SERVER $WELCOME#]]></TEST>

请让我知道确切的问题是什么????

4

2 回答 2

0

作为一般规则,不要尝试使用正则表达式解析 XML/HTML。XML 不是一种常规语言,您会遇到层出不穷的问题。你最终想要做什么?可能有一种更简单的方法来解决这个问题。

于 2012-07-11T16:02:16.283 回答
0

很难理解你想要表演什么。上面代码中的一个明显错误是您试图-ne与不是数字的东西进行算术比较 ( )。

echo ... | sed ...上面输入的表达式应该产生字符串“ ”,并且您<&>正在测试它是否不等于零。

同样,澄清您的意图将使其他人能够帮助您。

于 2012-07-11T16:17:15.330 回答