Используйте лучший инструмент для разбора xml, в идеале это должен быть синтаксический анализатор, но если ваше требование простое и вы знаете, как структурирован ваш xml, может быть достаточно простой манипуляции со строками.Например, XML-файл, и вы хотите получить значение tag3
$ cat file
blah
<tag1>value1 </tag1>
<tag2>value2 </tag2>
<tag3>value3
</tag3>
blah
$ awk -vRS="</tag3>" '/tag2/{ gsub(/.*tag3>/,"");print}' file
value3
, чтобы выполнить итерацию по вашему каталогу
for file in *.xml
do
value="$(awk -vRS="</tag3>" '/tag2/{ gsub(/.*tag3>/,"");print}' "$file" )"
echo "$value"
done