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.
- 5536 megtekintés
Hozzászólások
sed?
sed -i "s@name1 =.*@name1 = ÚJ_ÉRTÉK@" konfigfájl
Bár nemigen értem a kérdést.
- A hozzászóláshoz be kell jelentkezni
A lenyeg, hogy van egy konfiguracios fajl, aminek az egyik valtozohoz tartozo erteket kellene lecserelni. A sed- es megoldas ebben az esetben nem jo, mert ez minden section- ben lecsereli az adott valtozohoz tartozo erteket, de ez meg athidalhato.
- A hozzászóláshoz be kell jelentkezni
Nagyon hülye megoldás: kézzel átírni? Nem értem, hogy most hol is a probléma. Vagy esetleg egymillió ilyen fájlban kell átírni?
- A hozzászóláshoz be kell jelentkezni
puppethez kell, nem most szeretnem hasznalni, hanem ha valami valtozik. Amugy nem 10^6, csak 10^4, de az meg nem lenne gond. Inkabb az, hogy mas parameterekkel kell ellatni, amit a puppet kezel.
- A hozzászóláshoz be kell jelentkezni
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 :)
- A hozzászóláshoz be kell jelentkezni
Koszi, ez igy mar tenyleg jo. Nem ez volt az eredeti celom, de ezzel fogom hasznalni :- ).
- A hozzászóláshoz be kell jelentkezni
Örülök :)
- A hozzászóláshoz be kell jelentkezni
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.
- A hozzászóláshoz be kell jelentkezni
Ha nagyon egyszerű a feladat, qkkor sed, ha bonyolultabb, akkor awk, és ha sokkal bonyolultabb, természetesen perl.
- A hozzászóláshoz be kell jelentkezni