| CONFGET(1) | General Commands Manual | CONFGET(1) |
confget — read a
variable from a configuration file
confget |
[-cOSx] [-N |
-n] [-f
filename] [-m
pattern] [-P
postfix] [-p
prefix] [-s
section] [-t
type] varname... |
confget |
[-OSx] [-N |
-n] [-f
filename] [-m
pattern] [-P
postfix] [-p
prefix] [-s
section] [-t
type] -L
pattern... |
confget |
[-OSx] [-N |
-n] [-f
filename] [-m
pattern] [-P
postfix] [-p
prefix] [-s
section] [-t
type] -l |
confget |
[-f filename]
-q sections
[-t type] |
confget |
[-hTV] |
The confget utility examines a INI-style
configuration file and retrieves the value of the specified variables from
the specified section. Its intended use is to let shell scripts use the same
INI-style configuration files as other programs, to avoid duplication of
data.
The confget utility may retrieve the
values of one or more variables, list all the variables in a specified
section, list only those whose names or values match a specified pattern
(shell glob or regular expression), or check if a variable is present in the
file at all. It has a “shell-quoting” output mode that quotes
the variable values in a way suitable for passing them directly to a
Bourne-style shell.
Options:
-c-f
filename-h-L-l-m
pattern-N-n-Oconfget even considers variables in more than one
section.-P
postfix-p
prefix-q
query-S-s
sectionconfget will only consider variables defined in
the specified section; see the -O option for the
only exception.
If this option is not specified,
confget will use the first section found in the
configuration file. However, if the configuration file contains variable
definitions before a section header, confget
will only examine them instead.
If the -s option is
specified with an empty string as the section name,
confget will
only examine
variables defined before any section header (a “real”
unnamed default section); this is incompatible with the
-O option.
-T-t option.-t
type-V-xNot taken into consideration.
If the -c option is specified, the
confget utility will exit with a status of 0 if any
of the specified variables exist in the config file and 1 if none of them
are present.
In normal operation, no matter whether any variables were found in
the configuration file or not, the confget utility
exits with a status of 0 upon normal completion. If any errors should occur
while accessing or parsing the configuration file, the
confget utility will display a diagnostic message on
the standard error stream and exit with a status of 1.
Retrieve the variable machine_id from the
system section of a configuration file:
confget -f h.conf -s system
machine_idRetrieve the variable hostname from the
db section, but only if it ends in
“.ringlet.net”:
confget -f h.conf -s db -m
'*.ringlet.net' hostnameDisplay the names and values of all variables declared before any section has been defined:
confget -f h.conf -s ''
-lDisplay the names and values of all variables in the
system section with names beginning with
“mach” or ending in “name”, appending a
“cfg_” at the start of each variable name:
confget -f h.conf -s system -p 'cfg_'
-L 'mach*' '*name'Display the names and values of all variables in the
system section:
confget -f h.conf -s system
-lSafely read the contents of the db
section:
eval `confget -f h.conf -s db -p db_
-S -l`For another way to parse INI files, see the Config::IniFiles(3) Perl module.
No standards documentation was harmed in the process of creating
confget.
Please report any bugs in confget to the
author.
The confget utility was conceived and
written by Peter Pentchev
⟨roam@ringlet.net⟩ in 2008.
| May 9, 2021 | Debian |