Как написать скрипт для редактирования конфиг файла?
Есть много (1000) управляемых коммутаторов dlink, есть возможность руками перелопатить конфиг каждого, но желания нет, нужно написать скрипт, который меняет в файле vlan'ы, ip и прочее - и заливать конфиг. Подскажите, есть мануал или полезная статья на хабре по этому вопросу?
Напиши, что именно тебе надо поменять, я напишу тебе пример)))
А так, например, поменять IP-шник:
sed -i '/^config ipif System/s/[0-9.\/]\+/192.168.1.1/' config.cfg
Если логика какая-то в адресах присутствует, то можно сразу пачками в цикле делать за один заход. Я у себя например за один запуск сразу по 15-20 конфигов генерил.
диапазон адресов 192.168.24.33-46/25 шлюз 192.168.24.1 vlan 1000 25-26 порт, пользовательские vlan диапазон 1-24 vlan 1-24 порт как то так )
соответств на след. коммутаторе польз vlan ы 24-48 на 1-24 порт
спасибо за помощь буду ковырять дальше
так на примере 10 можно сделать остальные ) это маленькое зернышко в огромной куче // Лучше день потерять потом за пять минут долететь !!
Дам небольшой пример:
for i in {1..10};do
sed -i '
/^config ipif System/s/[0-9.\/]\+/'"192.168.24.$((32+$i))"'\/24/
/^create iproute/s/[0-9.]\+/192.168.24.1/ #в строке iproute заменить айпишник
/^config gvrp/i\ #добавить текст перед config gvrp
сreate vlan v2 tag 2\
config vlan v2 add untagged 2
' cfg-$i.cfg
done
Тока с регулярными выражениями разберитесь. И еще совет - лучше сделайте разок шаблон с якорями вроде <здесь-будет-шлюз>, а потом тупо в sed найти и заменить
Спасибо, думаю над реализацией php с веб мордой
поля ip адреса, управляемого vlan и диапазон vlan абонентских
вбил параметры получил файл залил на коммутатор . чем проще тем лучше )