NAME¶
confget — 
read a variable from a
  configuration file
SYNOPSIS¶
  
    
    
  
  
    | confget | 
    [-cSx]
      [-N | -n]
      [-f
      filename]
      [-m
      pattern]
      [-P
      postfix]
      [-p
      prefix]
      [-s
      section]
      [-t type]
      varname... | 
  
  
    
    
  
  
    | confget | 
    [-]
      [-N | -n]
      [-f
      filename]
      [-m
      pattern]
      [-P
      postfix]
      [-p
      prefix]
      [-s
      section]
      [-t type]
      -L pattern... | 
  
  
    
    
  
  
    | confget | 
    [-]
      [-N | -n]
      [-f
      filename]
      [-m
      pattern]
      [-P
      postfix]
      [-p
      prefix]
      [-s
      section]
      [-t type]
      -l | 
  
DESCRIPTION¶
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
 
  - Check-only mode; exit with a code of 0 if any of the
      variables are present in the configuration file, and 1 if there are
    none.
 
  - -f
    filename
 
  - Specify the configuration file to read from, or
      “-” (a single dash) for standard input.
 
  - -h
 
  - Display program usage information and exit.
 
  - -L
 
  - Variable list mode; display the names and values of all
      variables in the specified section with names matching one or more
      specified patterns.
 
  - -l
 
  - List mode; display the names and values of all variables in
      the specified section.
 
  - -m
    pattern
 
  - Only display variables with if their values match the
      specified pattern.
 
  - -N
 
  - Always display the variable name along with the value.
 
  - -n
 
  - Never display the variable name, only the value.
 
  - -P
    postfix
 
  - Display this string after the variable name as a
    postfix.
 
  - -p
    prefix
 
  - Display this string before the variable name as a
    prefix.
 
  - -S
 
  - Quote the variable values so that the
      “var=value” lines may be passed directly to the Bourne
    shell.
 
  - -s
    section
 
  - Specify the configuration section to read.
    
    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.
 
  - -T
 
  - List the available configuration file types that may be
      selected by the -t option.
 
  - -t
    type
 
  - Specify the configuration file type.
 
  - -V
 
  - Display program version information and exit.
 
  - -x
 
  - Treat the patterns as regular expressions instead of shell
      glob patterns.
 
ENVIRONMENT¶
Not taken into consideration.
EXIT STATUS¶
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.
EXAMPLES¶
Retrieve the variable 
machine_id from the
  
system section of a configuration file:
confget -f h.conf -s system
  machine_id
Retrieve the 
page_id variable from an HTTP GET request,
  but only if it is a valid number:
confget -f- -t http_get -x -m '^+$'
  page_id
Retrieve the variable 
hostname from the
  
db section, but only if it ends in
  “.ringlet.net”:
confget -f h.conf -s db -m '*.ringlet.net'
  hostname
Display 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 -l
Safely read the contents of the 
db section:
eval `confget -f h.conf -s db -p db_ -S
  -l`
SEE ALSO¶
For another way to parse INI files, see the
  
Config::IniFiles(3) Perl module.
STANDARDS¶
No standards documentation was harmed in the process of creating
  
confget.
BUGS¶
Please report any bugs in 
confget to the author.
AUTHOR¶
The 
confget utility was conceived and written by
Peter Pentchev ⟨roam@ringlet.net⟩ in
  2008.