У меня есть XML документ, который отформатирован следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<appname version="2.3">
<system name="web host">
<username><![CDATA[username1]]></username>
<password><![CDATA[password1]]></password>
<note><![CDATA[]]></note>
<url><![CDATA[]]></url>
</system>
<system name="vendor name">
<username><![CDATA[username@email.com]]></username>
<password><![CDATA[password2]]></password>
<note><![CDATA[]]></note>
<url><![CDATA[]]></url>
</system>
<system name="vendor name 3">
<username><![CDATA[username@email.com]]></username>
<password><![CDATA[password3]]></password>
<note><![CDATA[]]></note>
<url><![CDATA[]]></url>
</system>
<appname>
Я пытаюсь использовать:
xmlstarlet \
sel -T -t -m /root/system \
-v "concat(@name,',',username,',',password,',',note,',',url)" \
-n filename.xml
, и я получаю:
failed to load external entity "concat(@name,',',username,',',password,',',note,',',url)-n"
Мне просто нужен документ с разделителями табуляции из текущего, чтобы я мог импортировать его в другой менеджер паролей. У меня есть сотни записей, которые я действительно хотел бы не перепечатывать.
Может кто-нибудь помочь?