Provided by: cfget_0.19-1.1_all bug


       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".


              show program's version number and exit

       -h, --help
              show this help message and exit

       -q, --quiet
              quiet mode: only output fatal errors

       -v, --verbose
              verbose mode

              verbose mode

       -C file, --cfg=file
              config  file  to read; the option can be given more than once to read more than one
              file. If missing, read a colon separated list from the CFGET_CFG env variable.

       -P file, --plugin=file
              list of plugin files or directories to load. The option can be given more than once
              to  read  more  than  one  file.  If  missing, read a colon separated list from the
              CFGET_PLUGINS env variable.

       -d name, --dump=name
              dump the contents of the database using the given style. Use  '--dump=list'  for  a
              list  of  available  styles. If one or more paths are provided in the command line,
              dump only those paths, otherwise dump all.

       -t name, --template=name
              read a template file, expand template placeholders using the configuration data and
              output the result.  Use '--template=list' for a list of available styles.

       -f name, --format=name
              use  a  custom configuration file format (default: ini).  Use '--format=list' for a
              list of available formats.  The CFGET_FORMAT environment value, if defined, can  be
              used to provide a different default value.

       -r path, --root=path
              restrict all work to values under the given path


            # 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 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/ general/name

            # In a shellscript, you may want to use environment variables if you
            # invoke cfget many times:
            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

            # 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 <>.