bashでiniファイルを読む

More than 5 years have passed since last update.


setting.ini

[product]

a=123
[test]
a=456


bash_ini_parser.sh


# ini setting
INI_FILE=sample.ini
INI_SECTION=test

# ini parser
eval `sed -e 's/[[:space:]]*\=[[:space:]]*/=/g' \
-e 's/;.*$//' \
-e 's/[[:space:]]*$//' \
-e 's/^[[:space:]]*//' \
-e "s/^\(.*\)=\([^\"']*\)$/\1=\"\2\"/" \
< $INI_FILE \
| sed -n -e "/^\[$INI_SECTION\]/,/^\s*\[/{/^[^;].*\=.*/p;}"`

echo $a # 456