1

Я пытаюсь записать некоторые изменения, которые мне нужно внести в пару файлов конфигурации. Стоит отметить, что я эксперт с sed и awk, хотя мне гораздо лучше с sed.

Прямо сейчас я делаю:

sed '/setting.name/c setting.name: newvalue' </etc/foo.conf >tmpfile.tmp && mv tmpfile.tmp /etc/foo.conf

Но наверняка есть лучший способ? Возможно с awk?

1 ответ1

3

Лучший способ:

 sed -i.bak 's/Old Info/New Info/' file.cfg

Это редактирует файл на месте, но сохраняет оригинал как «name.cfg.bak».

Если вы знаете все, что нужно изменить, вы, вероятно, захотите, чтобы скрипт делал это следующим образом:

 sed -i.bak -e 's/first setting/new first/' -e 's/next setting/new next/' -e 's/etc/new etc/' file.cfg

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .