Как использовать sed, чтобы не удалять всю строку, соответствующую шаблону - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть .yaml, в котором: -

значение: "это целая строка с этим текстом -Djavax. net .ssl.keyStorePassword и непрерывная строка"

Я хочу удалить только -Djavax. net .ssl.keyStorePassword , но при этом удаляется целое значение: section

1 Ответ

1 голос
/ 12 февраля 2020

Вы можете использовать sed, чтобы найти и заменить строку в вашем файле. См. Также: https://unix.stackexchange.com/questions/159367/using-sed-to-find-and-replace#159369

Код, который будет выглядеть в вашем случае:

sed -i -e 's/-Djavax.net.ssl.keyStorePassword//g' filename.yaml

Таким образом, sed заменяет вашу строку на пустая строка.

Параметр /s используется для поиска подстроки в файле. Поместите строку, чтобы заменить ее после следующего /. /g в конце заставляет sed скопировать эту строку в ваш файл. См https://linux.die.net/man/1/sed

...