Как вырезать из файлов всё, кроме нужного тега?
перебрать файлы можно с помощью find, например. вырезать - grep, sed, awk.
я только не понял, что именно означает "вырезать". приведите пример, что есть и что хочется получить.
Я бы посоветовал глянуть в сторону xmllint.
Утилита юниксовая, но в Cygwin она есть:
https://stackoverflow.com/questions/21871237/use-x...
Примерный формат будет таким:
xmllint --xpath 'путь-к-xml-тегу' --output 'путь-к-файлу-для-сохранения-результата' путь-к-исходному-xml-файлу
Например, если надо выдрать все теги , где бы они не находились, будет примерно так:
xmllint --xpath '//TaxNo' --output 'file.stripped.xml' file.xml
Если надо выдирать не все попало теги TaxNo, а только вложенные в единственный тег Taxes, который, в свою очередь, вложен в корневой тег Root, то команда будет примерно такой:
xmllint --xpath '/Root/Taxes//TaxNo' --output 'file.stripped.xml' file.xml