Я использую sed на компьютере с macOS X.
У меня есть набор очень больших финансовых файлов размером 10 КБ, и я хочу сохранить только текст.
Прямо сейчас я пытаюсь удалить всю информацию между
<TYPE>XML
и
<DOCUMENT>
Обычно между ними находится много информации, но вот как будет выглядеть пример:
#Other things I want to keep
<TYPE>XML
<SEQUENCE>10
<FILENAME>rht-10qq3fy19_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
...
<DOCUMENT>
#Some other text I need to keep
Я пытался использовать sed без особых результатов, я могу только удалить однострочные записи, такие как
<TYPE>XML SOME WORDS SOME WORDS <DOCUMENT>
Я использовал этот код, чтобы заставить это работать:
sed -i '' s/<TYPE>XML.*<DOCUMENT>//g' filename.txt
Что я должен изменить, чтобы получить желаемый результат?
Как только я смогу решить эту проблему, другие вещи, которые мне нужно очистить, также станут проще. Решение не должно использовать sed.
Я использую -i
и ''
в начале команды sed, потому что я работаю на Mac (BSD) и изменяю данные на месте.