aivs |
|
Темы:
62
Сообщения:
261
Участник с: 31 октября 2006
|
Пытаюсь парсить /etc/resolv.conf, также нужно заменить nameserver 123.123.123.123 на nameserver 321.321.321.321 Вот написал sed -e 's/^[^#]*nameserver.*/nameserver 123.123.123.123/' /etc/resolv.conf Печать определенной строки нашел как делать: # печать строки 52 sed -n ‘52p’ # способ 1 sed ‘52!d’ # способ 2 sed ‘52q;d’ # способ 3, Но как это в мой скрипт засунуть непонял. |
aivs |
|
Темы:
62
Сообщения:
261
Участник с: 31 октября 2006
|
Вот так смог изменить нужную строкуsed -e '/^#/d' /etc/resolv.conf | sed -e '1s/nameserver.*/nameserver 123.123/' Но в файл таким образом не записать |
aivs |
|
Темы:
62
Сообщения:
261
Участник с: 31 октября 2006
|
И точно также нужно удалить например вторую найденную строку, Как ??? |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Стоп. Можно поподробнее, зачем в resolv.conf менять один адрес на другой? Вдруг найдётся способ сделать всё проще, если вы объясните, чего в конечном счёте вы хотите этим добиться? |
aivs |
|
Темы:
62
Сообщения:
261
Участник с: 31 октября 2006
|
Пописываю программу, для графической настройки сети. В ней можно настроить: Static/DHCP, если выбран Static, то в /etc/rc.conf изменяем параметр address, netmask, gateway - это сделано. и ввести DNS адреса. Есть три переменные, которые хранят днс адреса, и их нужно внести в /etc/resolv.conf, возможно я и впавду перемудрил с заменой имеющихся адресов на новые. Наверное лучше перед записью данных в /etc/resolv.conf его очистить. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Учитывая сложность этого файла (две строчки nameserver $IP , то есть фактически ничего от старого там не останется), последний вариант явно лучше :) |