我有一个MyFile.xml,其内容如下
<root>
<Main>
<someothertag>..</someothertag>
<Amt Ccy="EUR">13</Amt>
</Main>
.
.
.
some other tags
<Main>
<someothertag>..</someothertag>
<Amt Ccy="SGD">10</Amt>
</Main>
<another>
<Amt Ccy="EUR">10</Amt>
</another>
</root>
我有脚本文件,其内容如下
result = `awk '/<Main>/ { f=1 } f && /Amt/ { split($0,a,/[<>]/); s+=a[3] } /<\/Main>/ { f=0 } END {print s }' MyFile.xml`
echo "The result is " $result
但我的输出是
result: 0653-690 Cannot open =.
result: 0653-690 Cannot open 23.
The result is
我的预期输出是
The result is 23
答案 0 :(得分:0)
分配变量时,=
的任何一侧都不应有空格。
更改为:
result=`awk '/<Main>/ { f=1 } f && /Amt/ { split($0,a,/[<>]/); s+=a[3] } /<\/Main>/ { f=0 } END {print s }' MyFile.xml`