У меня есть много текстовых файлов в формате XML, например:
<TITLE>title</TITLE>
<TEXT>text</TEXT>
Но мне нужно изменить текст тегов на что-то вроде этого:
<field name="title">title</field>
<field name="text">text</field>
Iя пытаюсь написать небольшой скрипт на bash и использовать команду sed
для изменения текста тегов.
sed "s/<TEXT>/<field name"text">/g"
Я использую эту команду для каждого тега, но эти файлы содержат более 20 различных тегов, поэтому я думаю, что должен быть более эффективный способ выполнить эту задачу.
Спасибодля любой помощи.
РЕДАКТИРОВАТЬ: Добавлен пример ввода и вывода.
Вход
<?xml version="1.0" encoding="UTF-8"?>
<DOC>
<DOCID>MF-20020103001</DOCID>
<DATE>01/03/02</DATE>
<TITLE>Example title</TITLE>
<TEXT>Very long text...</TEXT>
</DOC>
Выход
<?xml version="1.0" encoding="UTF-8"?>
<doc>
<field name="docid">MF-20020103001</field>
<field name="date">01/03/02</field>
<field name="title">Example title</field>
<field name="text">Very long text...</field>
</doc>