У меня есть файл с несколькими линиями, которые содержат IP-адрес и потом ..... Название переменнойНайти строку, содержащая строку и заменить другую строку с новой строкой
примера
server 127.0.0.1:80 VARTOREPLACE
server 127.1.0.1:80 VARTOREPLACE
server 127.2.0.1:80 VARTOREPLACE
Как я мог пойти о сканировании через файл и соответствующий шаблон IP-то, полагая, что вар, который соответствует в этой линии конкретной строки ..... пример
- если ф соответствует
127.*.*.*
заменитьVARTOREPLACE
сNEWVAR1
- если ф соответствует
127.1.*.*
заменитьVARTOREPLACE
сNEWVAR2
- если ф соответствует
127.2.*.*
заменитьVARTOREPLACE
сNEWVAR3
Я попытался
sed -i '/:127.0 /s/VARTOREPLACE/NEWVAR1/' file
Любая помощь будет оценена.
sed -i '/:127.0/s/VARTOREPLACE/NEWVAR1 /' файл –
@ EricCox попробуйте с 'sed '/127.0/s/VARTOREPLACE/NEWVAR1/; /127.1/s/VARTOREPLACE/NEWVAR2/; /127.2/s/VARTOREPLACE/NEWVAR3/ 'file' –
'127.1. *. *' Является подмножеством '127. *. *. *' - Предполагаю, что вам нужна более конкретная замена, если она применяется? –