Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
GETCONF(1)              FreeBSD General Commands Manual             GETCONF(1)

     getconf - retrieve standard configuration variables

     getconf [-v environment] path_var file
     getconf [-v environment] system_var

     The getconf utility prints the value of a POSIX or X/Open path or system
     configuration variable to the standard output.  If the specified variable
     is undefined, the string ``undefined'' is output.

     The first form of the command, with two mandatory arguments, retrieves
     file- and file system-specific configuration variables using pathconf(2).
     The second form, with a single argument, retrieves system configuration
     variables using confstr(3) and sysconf(3), depending on the type of
     variable.  As an extension, the second form can also be used to query
     static limits from <limits.h>.

     All sysconf(3) and pathconf(2) variables use the same name as the
     manifest constants defined in the relevant standard C-language bindings,
     including any leading underscore or prefix.  That is to say, system_var
     might be ARG_MAX or _POSIX_VERSION, as opposed to the sysconf(3) names
     _SC_ARG_MAX or _SC_POSIX_VERSION.  Variables retrieved from confstr(3)
     have the leading `_CS_' stripped off; thus, _CS_PATH is queried by a
     system_var of ``PATH''.

   Programming Environments
     The -v environment option specifies a IEEE Std 1003.1-2001 (``POSIX.1'')
     programming environment under which the values are to be queried.  This
     option currently does nothing, but may in the future be used to select
     between 32-bit and 64-bit execution environments on platforms which
     support both.  Specifying an environment which is not supported on the
     current execution platform gives undefined results.

     The standard programming environments are as follows:

           POSIX_V6_ILP32_OFF32       Exactly 32-bit integer, long, pointer,
                                      and file offset.  Supported platforms:

           POSIX_V6_ILP32_OFFBIG      Exactly 32-bit integer, long, and
                                      pointer; at least 64-bit file offset.
                                      Supported platforms: IA32, PowerPC.

           POSIX_V6_LP64_OFF64        Exactly 32-bit integer; exactly 64-bit
                                      long, pointer, and file offset.
                                      Supported platforms: Alpha, SPARC64.

           POSIX_V6_LPBIG_OFFBIG      At least 32-bit integer; at least 64-bit
                                      long, pointer, and file offset.
                                      Supported platforms: None.

     The command:


     returns a newline-separated list of environments in which the width of
     certain fundamental types is no greater than the width of the native C
     type long.  At present, all programming environments supported by FreeBSD
     have this property.  Several of the confstr(3) variables provide
     information on the necessary compiler and linker flags to use the
     standard programming environments described above.

     The getconf utility exits 0 on success, and >0 if an error occurs.

     The command:

           getconf PATH

     will display the system default setting for the PATH environment

     The command:

           getconf NAME_MAX /tmp

     will display the maximum length of a filename in the /tmp directory.

     The command:

           getconf -v POSIX_V6_LPBIG_OFFBIG LONG_MAX

     will display the maximum value of the C type long in the
     POSIX_V6_LPBIG_OFFBIG programming environment, if the system supports
     that environment.

     Use of a system_var or path_var which is completely unrecognized is
     considered an error, causing a diagnostic message to be written to
     standard error.  One which is known but merely undefined does not result
     in an error indication.  The getconf utility recognizes all of the
     variables defined for IEEE Std 1003.1-2001 (``POSIX.1''), including those
     which are not currently implemented.

     pathconf(2), confstr(3), sysconf(3)

     The getconf utility is expected to be compliant with IEEE Std 1003.1-2001

     The getconf utility first appeared in FreeBSD 5.0.

     Garrett A. Wollman <>

FreeBSD 11.0-PRERELEASE       September 18, 2002       FreeBSD 11.0-PRERELEASE


Want to link to this manual page? Use this URL:

home | help