как использовать xmllint для получения значения из XML


2

У меня есть следующий файл XML

<?xml version="1.0" encoding="UTF-8" ?>
<!-- Component configuration file -->
<Component>
   <Name>install_env</Name>
   <HelpString>install_env Com</HelpString>
   <Version>1.10.3</Version>
                <Properties>

как получить значение тега Name - install_env

с помощью инструмента - xmllint

Ответы:


1

С вашим тестовым файлом:

<?xml version="1.0" encoding="UTF-8" ?>
<!-- Component configuration file -->
<Component>
   <Name>install_env</Name>
   <HelpString>install_env Com</HelpString>
   <Version>1.10.3</Version>
</Component>

Я использую аргумент --xpath, чтобы получить значение тега name:

user$ test=$(xmllint --xpath "//Component/Name/text()" testfile) 
user$ echo $test
install_env

--xpath подразумевает --noout, который не позволяет xmllint выводить что-либо. Перенаправить вывод в переменную или файл.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.