Ваш XPath не работает из-за пространства имен по умолчанию (http://www.opengis.net/sld
) в вашем XML.
См. Этот ответ , где описаны некоторые варианты обработки пространств имен по умолчанию в xmllint.
Кроме того, поскольку атрибут, который вы пытаетесь выбрать, находится в корневом элементе, просто используйте /*
в своем xpath ...
xmllint --xpath "/*/@version" my_geoserver_sld_file.sld
Это вернет version="1.0.0"
. Если вы просто хотите значение 1.0.0
, используйте string()
...
xmllint --xpath "string(/*/@version)" my_geoserver_sld_file.sld