Как найти и заменить шаблоны типа «что-то =« строка »» в Linux? - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть XML-файл, в котором есть теги, как показано ниже.

<project name=“something” revision=“abc” />
<project name=“something2” revision=“xyz” />
...

Как я могу заменить 'revision = "string here" на мои собственные строки в Linux (Ubuntu)?

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Правильный инструмент для этой работы - XSLT.Существует некоторая кривая обучения, но она очень мощная, и вам действительно следует использовать инструменты с поддержкой XML для обработки файлов XML (если вы используете инструменты без поддержки XML, такие как sed, существует большой риск создания недопустимого XML).

0 голосов
/ 11 декабря 2018

Вы можете использовать sed для выполнения замены на месте.Допустим, вы хотите заменить revision="abc" на revision="foobar", поэтому полученная команда будет (при условии, что XML находится в файле с именем foo.xml)

    cat foo.xml | sed 's/revision="abc"/revision="foobar"/g'

Затем вы должны повторить это для каждой строки / заменывам нужно сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...