CFGET(1) | User Commands | CFGET(1) |
cfget - get values from a config file
cfget [options] section/key
cfget [options] --dump=STYLE [section/key
[section/key...]]
cfget [options] --template=STYLE [infile
[outfile]]
Get values from a config file.
cfget is a simple tool to read values from configuration files. It is useful, for example, to create configurable shellscripts or makefiles.
It can also be configured to support virtual configuration values that, if not present in the config file, are automatically computed from the existing values. This makes it convenient, for example, to get a "duration" value from a configuration file that only contains a "start date" and an "end date".
# Get a key from a config file cfget -C file.ini general/name # More can be specified, they will be searched in order cfget -C general.ini -C local.ini general/name # Use a plugin to add virtual entries cfget -C file.ini --plugin=virtual.py general/name # A plugin can also a directory containing .py files # and plugins can also be specified more than once cfget -C file.ini --plugin=virtual.py --plugin=virtual/ general/name # In a shellscript, you may want to use environment variables if you # invoke cfget many times: #!/bin/sh CFGET_CFG=general.ini:local.ini CFGET_PLUGINS=virtual.py:virtual/ START=`cfget general/start` END=`cfget general/end` DURATION=`cfget general/duration` # Quick way to copy all config values to the environment eval `cfget --dump=exports -C file.ini` # Autoconf-style template substitution cfget --template=autoconf -C file.ini script.in script # Curly braces substitude literally cfget -C file.ini "general/start_{general/type}" # One can use simple expressions cfget -C file.ini "general/start + general/duration" cfget -C file.ini "round(general/age / 2)"
cfget has been written by Enrico Zini <enrico@enricozini.org>.
July 2010 | cfget 0.15 |