Удалить строку с пробелами и цитатами из xml-файла

Я хотел бы удалить строку currencyId="GBP" из XML-файла. Обратите внимание, что перед первой буквой c находится пробел. У меня возникли проблемы с анализом данных, и удаление этой строки (включая начальное пространство) облегчит мне работу. Я знаю, что могу использовать sed, но пространство в начале строки и двойные кавычки, кажется, отключает меня в моих попытках до сих пор.

Чтобы прояснить здесь, это образец xml.

 <location>Ethiopia</location><country>ET</country><shippingInfo> <shippingServiceCost currencyId="GBP">2.83</shippingServiceCost> <shippingType>Flat</shippingType> <shipToLocations>Worldwide</shipToLocations></shippingInfo><sellingStatus> <currentPrice currencyId="USD">157.5</currentPrice> <convertedCurrentPrice currencyId="GBP">111.45</convertedCurrentPrice> 

Если я достиг своей цели, строка convertCurrentPrice будет читать:

 <convertedCurrentPrice>111.45</convertedCurrentPrice> 

2 Solutions collect form web for “Удалить строку с пробелами и цитатами из xml-файла”

sed -i 's/ currencyId="GBP"//' file.xml – Это работает для меня. Добавьте g в конец команды sed, если вы хотите заменить все экземпляры.

Поскольку вы не указали, хотите ли вы заменить строку глобально или нет, я предполагаю, что она будет заменена для определенной строки, поэтому команда будет,

  sed -i '6s + currencyId = "GBP" ++' filename.xml 

Лучше сделать резервную копию файла перед редактированием, поэтому, чтобы быть на более безопасной стороне, я бы использовал,

  sed -i.bak '6s + currencyId = "GBP" ++' filename.xml 

  • Как отсортировать XML-элементы на месте?
  • Как удалить узлы из файла HUGE (> 2gb)?
  • Как распаковать несколько каталогов с zip-файлами, которые также содержат подкаталоги с zip-файлами?
  • использование curl с $ {= (System.nanoTime ())} внутри файла req.xml
  • Удалить все узлы <FOLDER>! = Значение тега
  • Преобразование файла субтитров xml в формат srt
  • Выход Grep между узлами XML «Шаблон в наборе основных узлов»
  • Найти шаблон в XML с помощью команды unix
  • Прокрутите только архив данных .zip только для чтения, чтобы извлечь строку из файла .kml в
  • Как вставить переменные внутри строки, содержащей ""?
  • Есть ли инструмент командной строки для проверки файлов RDF?
  • Linux и Unix - лучшая ОС в мире.