Konfiguracios fajl valtoztatasa

Udv!

Egy konfigaricios fajlban szeretnek egy valtozot kicserelni, de mivel sajat, augeas nem ismeri fel, igy mas megoldasra lenne szukseg.

Maga a fajl igen egyszeru szerkezetu:


[section]
name1 = value1
name2 = value2
...

, de adott esetben a [section] is elhagyhato. A

name1

megvaltoztatasahoz keresek valamilyen programot. Puppethez lenne amugy.

Koszi az otleteket.

Hozzászólások

sed?

sed -i "s@name1 =.*@name1 = ÚJ_ÉRTÉK@" konfigfájl

Bár nemigen értem a kérdést.

Ja, azért hogy tanuljunk, a sed kicsit módosítva:

$ cat teszt 
[section1]
name1=val1
name2=val2

[section2]
name1=val1
name2=val2

$ sed "/\[section2\]/,/\[.*\]/ s@name1=.*@name1=new_val@" teszt 
[section1]
name1=val1
name2=val2

[section2]
name1=new_val
name2=val2

És így már talán jó is :)

Amugy tenyleg erdekelne, hogy masok mivel szoktak konfiguracios fajlokat szerkeszteni? Ok, persze, kezzel, de automatizalva gondoltam. Az egyetlen, amit ismerek ilyen celokra, az a fentebb emlitett augeas, de ez ilyen lencsek alapjan mukodik, es ha valamihez nincs lencseje, akkor azzal bizony semmit sem csinal. Persze igy biztonsagos, de megis erdekelne valami olyan progi, ami megprobalna a fajl tartalmabol kitalalni, hogy milyen szerkezete van, es aszerint manipulalna, meg ha annyira nem is javasolt konfiguracios fajlok eseten.

Koszi.