изменить значение атрибута в скрипте bash shell unix - PullRequest
0 голосов
/ 17 марта 2020

Ребята, у меня есть xml, где у них есть requestID attrbute, и я хочу изменить его значение - оно может быть в виде таких форм:

<ns0:requestID>12345</ns0:requestID>
<requestID>12345</requestID>
<requestID>12345667</requestID><anyOtherAttribute>131241</anyOtherAttribute>

любое предложение, как это сделать через "седь"? - Спасибо

1 Ответ

0 голосов
/ 17 марта 2020

есть предложения, как сделать это через "sed"?

Эта простая команда замещения обрабатывает показанные случаи:

sed 's,\<requestID>[^<]*,requestID>CHANGE,'

Можете ли вы сказать мне, что это значит?

  • s,<i>regexp</i>,<i>replacement</i>, - Попытка сопоставить <i>regexp</i> с шаблоном пространства. В случае успеха замените ту часть, которая соответствует <i>replacement</i>.
  • \< - соответствует пустой строке в начале слова
  • [^<] - соответствует любому символу, кроме <
  • * - предыдущему элементу будет соответствовать ноль или более раз.
  • CHANGE - значение, на которое вы хотите изменить
...