Мой оригинальный файл:Ошибка при попытке изменить файл с 'SED -i'
nameserver 123.23.23.12
nameserver 10.0.1.13
Я хочу изменить его на:
nameserver 10.0.0.1
nameserver 10.0.1.13
команды, что я использую:
sed -i 's/nameserver*/nameserver 10.0.0.1/g' resolve.conf
Ошибка, которую я получаю:
sed: -i may not be used with stdin
Кроме того, когда я использую ниже, чтобы проверить результат:
sed 's/nameserver*/nameserver 10.0.0.1/g' resolve.conf
я получаю:
nameserver 10.0.0.1 123.23.23.12
Во втором случае, это не заменяет полную строку, а просто добавив мою замену текста ,
Любая идея, что я делаю неправильно?
Спасибо!
Hi, IP-адрес часть динамична. Это может быть что угодно – Dadu
Пробовал: sed -i '' 's/nameserver. */Nameserver 10.0.0.1/g' resolve.conf. По-прежнему получается такая же ошибка. sed: -i не может использоваться с stdin – Dadu
Попробуйте 'sed -i ''' - с пробелом после '-i'. Я пробовал без этого места на Mac OS и Ubuntu, и это сработало. На какой ОС вы работаете? – codeforester