Как удалить содержимое перед шаблоном в XML с помощью Unix

Source file example:  

(Файл XML создан в одну строку)

ИЛИ ЖЕ

 Source file example:       

Мне нужно удалить все содержимое файла до в обоих исходных форматах. Я пытался использовать метод ниже

 sed 's/^.*b/b/' 

Но это не заменит его. Пожалуйста, дайте мне знать, если есть альтернативный способ.

3 Solutions collect form web for “Как удалить содержимое перед шаблоном в XML с помощью Unix”

Предполагая, что ваш XML-документ правильно сформирован, как

         

Затем вы можете использовать XMLStarlet для удаления всех тегов HDR следующим образом:

 xmlstarlet ed -d '//HDR' file.xml >newfile.xml 

Чтобы удалить только tags HDR , за которыми сразу следует тег b :

 xmlstarlet ed -d '//HDR[following-sibling::*[1][name() = "b"]]' file.xml >newfile.xml 

XMLStarlet также может быть использован для изменения содержимого тегов:

 $ xmlstarlet ed -u '//HDR[following-sibling::*[1][name() = "b"]]' -v 'New header value' file.xml < ?xml version="1.0"?>  New header value    $ xmlstarlet ed -i '//HDR[following-sibling::*[1][name() = "b"]]' -t attr -n 'new_attribute' -v 'hello' file.xml < ?xml version="1.0"?>      

Тип 1 :

  echo "" | sed 's/^.*//'  
  • заменит все до на

Тип 2 :

 sed -n '//,$p' file     
  • напечатает первое вхождение в конец файла ($).

Вопрос:

удалить все содержимое файла до

Ответ:

 perl -0777 -lape 's/^.*//s' 

Тестовый забег:

 ==> in1.txt < ==  ==> in2.txt < ==       $ perl -i -0777 -lape 's/^.*//s' in{1,2}.txt ==> in1.txt < ==  ==> in2.txt < ==     
  • Изменение файла XML на основе частичного имени
  • Как получить список значений соответствия атрибутов с помощью xmllint и xpath?
  • Смутно о том, как преобразовать XML в CSV с помощью xmlstarlet в OS X?
  • строки в столбцы с awk
  • Удалить узел XML, содержащий определенный элемент
  • Переупорядочить текст в каждой строке файла
  • Поиск строки, с успехом Поиск ближайшего шаблона
  • Разделение файлов в Unix с использованием значений в файле
  • Как сгенерировать HTML-отчет nmap с помощью python?
  • Как разобрать пространства имен из XML-файла с помощью XMLLINT и BASH
  • Извлекать и удалять первое вхождение XML-тега несколько раз
  • Linux и Unix - лучшая ОС в мире.