Простой стиль формата конфигурации (переменная = значение, по одному на строку) легко анализируется с помощью grep и cut.
Например, файл config.conf:
name=Some Name
description=Some Description
Затем, чтобы получить конкретное значение:
# grep "^name=" config.conf | cut -d= -f2
Some Name
# grep "^description=" config.conf | cut -d= -f2
Some Description
Это просто и очень дешево (не требует установки дополнительных двоичных файлов, поскольку grep и cut являются стандартными для любого Linux ...).
Вы также можете написать простую оболочку bash-скрипта, если хотите, чтобы одна команда выдавала нужное вам значение:
#!/bin/bash
CONFIG_PATH=/path/to/config.conf
if [ ! -e $CONFIG_PATH ]; then
echo "$CONFIG_PATH not found"
exit 1
fi
if [ $# -ne 1 ]; then
echo "Syntax: $0 \"<variable name>\""
exit 1
else
VARNAME="$1"
eval "grep \"^$VARNAME=\" $CONFIG_PATH | cut -d= -f2"
fi
Тогда все, что вам нужно сделать, это назвать так:
# yourscript.sh variable_name