Обработка ini-файлов shell-скриптом (Нужны готовые примеры/библиотеки...)

На самом деле это единственный раздел про unix на этом форуме

Модератор: /dev/random

Аватара пользователя
Goodvin
Ведущий рубрики
Сообщения: 4333
Статус: ⚝⚠⚒⚑⚖☭☞☣☤&

Обработка ini-файлов shell-скриптом

Сообщение Goodvin »

Доброго времени суток, уважаемые.

Встала вот тут у меня задача: обрабатывать скриптом на шелле некие ini-файлы.

С sed, awk и вообще с написанием скриптов на /bin/bash знаком.
Однако, не хотелось тратить время на то, что уже кто-то когда-то делал.

Подскажите, не видел ли кто готовых примеров, процедур, функций по работе с текстовыми ini-файлами посредством sh или bash ?
Или дайте ссылку на доку, где есть описание подобный действий и/или примеры.

P.S.
Задаю такой вопрос не от того, что ленив/не хочу делать сам/не способен почитать маны.
Просто хочу сэкономить время, т.к. скорее всего кто-то где-то подобное уже делал и примеры кода/готовые скрипты есть.
Спасибо сказали:
Аватара пользователя
Valerius
Бывший модератор
Сообщения: 1469
Статус: Отпетый КДЕ'шник

Re: Обработка ini-файлов shell-скриптом

Сообщение Valerius »

Если не ошибаюсь, структура ini-файлов очень похожа на кдешные .desktop и файлы настроек. Тогда можна заюзать kreadconfig и kwriteconfig
Свобода есть тонкая полоска между диктатурой и анархией.

---------------------
Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Спасибо сказали:
Аватара пользователя
demongloom
Сообщения: 454
Статус: Добрый Демон

Re: Обработка ini-файлов shell-скриптом

Сообщение demongloom »

Или php если установлен. Он позволяет писать скрипты и запускать не как вебприложения, а как тот же баш. Просто в пхп есть уже сразу готовые функции для ини файлов.
Если жизнь твоя порвется, тебе новую сошьют.
Спасибо сказали:
Аватара пользователя
Warderer
Модератор
Сообщения: 1055
Статус: киберпИнгвин на гусеничном ходу
ОС: Debian unstable

Re: Обработка ini-файлов shell-скриптом

Сообщение Warderer »

как и в perl
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
Спасибо сказали:
Аватара пользователя
madskull
Сообщения: 1019
Статус: Экс-металлюга

Re: Обработка ini-файлов shell-скриптом

Сообщение madskull »

(Strangerrr @ Четверг, 17 Февраля 2005, 10:47) писал(а):как и в perl

Да, конечно.
http://cpan.uwinnipeg.ca/search?query=ini+files&mode=dist

madskull добавил в 17.02.2005 11:16
Кстати, я, все-таки, использую "самодельные" парсеры. Потому что, если это небольшая, разовая работа, то дольше разбираться с готовыми библиотеками, что написать свой.
Типа такого

Код: Выделить всё

IFS=$'\n'
for str in `cat ini | sed 's/^ *//' | egrep -v '^$|^#'`; do
    eval $(echo $str|sed 's/ *=/=/;s/= */=/')
done


для ини, имеющего вид

Код: Выделить всё

# The "wait" command below makes Wget wait between every connection.
# If, instead, you want Wget to wait only between retries of failed
# downloads, set waitretry to maximum number of seconds to wait (Wget
# will use "linear backoff", waiting 1 second after the first failure
# on a file, 2 seconds after the second failure, etc. up to this max).
waitretry = 10

var1=1234
var2=$((5+$var1*10))


И потом обращаться к опциям конфига как к переменным: echo $waitretry

Хотя, могут быть и подводные камни.
Например, echo $var2 выдаст, как и ожидается, 12345
ArchLinux / IceWM
Спасибо сказали: