manpagez: man pages & more
man getconf(1)
Home | html | info | man
getconf(1)                BSD 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 vari-
     able.  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 mani-
     fest 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 sup-
     port both.  Specifying an environment which is not supported on the cur-
     rent 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: None.

           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 informa-
     tion on the necessary compiler and linker flags to use the standard pro-
     gramming environments described above.

     Many of these values are also available through the sysctl(8) mechanism.


     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 vari-

     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 con-
     sidered 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), sysctl(8)


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

BSD                           September 18, 2002                           BSD

Mac OS X 10.6 - Generated Thu Sep 17 20:07:44 CDT 2009
© 2000-2022
Individual documents may contain additional copyright information.