У меня есть следующий файл конфигурации:
dependencies:
- name: server2
version: 1.0.0.0
repository: "repository2"
- name: server1
version: 4.3.2.1
repository: "repository2"
Теперь я хочу заменить версию сервера 1 чем-то вроде 'newVersion'.
Версия всегда находится под именем, я хочу заменить номер версии (4.3.2.1), но я не знаю этот номер, поэтому мне нужно заменить все, что находится между 'version:' и '\ n ».
Я знаю, что хочу изменить версию server1.
Я попробовал следующее:
sed ':a;N;$!ba;s/server1\n\s\sversion:/newVersion/}' file.txt
Я знаю, что sed не может "нормально" читать несколько строк без оператора N, но у меня все равно это не работает, кто-нибудь может мне здесь помочь?