удалить элемент, но сохранить содержимое в родительском элементе в xmlstarlet

Я использую xmlstarlet и хочу преобразовать элементы такого рода:

<entry>
<para>Text</para>
</entry>
<entry>
<para>
<emphasis role=bold>text</emphasis>
</para>

to:

<entry>Text</entry>
<entry><emphasis role=bold>text</emphasis></entry>

Возможно ли это в xmlstarlet?

Любая помощь приветствуется!

Благодарность,

Расс


person Russ Urquhart    schedule 27.02.2013    source источник


Ответы (1)


xmlstarlet ed -u //para/.. -x 'para/node()' para.xml

Это означает: замените содержимое каждого родителя para содержимым файла para. Требуется версия 1.4.0+

person npostavs    schedule 28.02.2013
comment
Спасибо, это сработало. Я собираюсь записать это, но я также думаю, что это должно быть добавлено к образцам? - person Russ Urquhart; 28.02.2013
comment
Не работает на моей стороне, отличается ли синтаксис на macos? - person DevonDahon; 07.02.2019
comment
Я полагаю, что @maxagaz macOS использует оболочку bash, поэтому синтаксис должен быть таким же. - person npostavs; 07.02.2019