getconf(1)getconf(1)NAMEgetconf - Displays system configuration variable values
SYNOPSISgetconf [-v specification] system_var
getconf [-v specification] path_var pathname
STANDARDS
Interfaces documented on this reference page conform to industry stan‐
dards as follows:
getconf: XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
OPTIONS
Indicates a specification and version for which configuration variables
are to be determined. If this option is not specified, the values
returned will correspond to an implementation default XBS5-conforming
compilation environment.
The specification can be one of the following symbolic con‐
stants:
XBS5_ILP32_OFF32
XBS5_ILP32_OFFBIG
XBS5_LP64_OFF64
XBS5_LPBIG_OFFBIG
These four constants have corresponding system standards config‐
uration variables. The names are the same except for a leading
underscore in the name of the configuration variable; for exam‐
ple, the specification constant XBS5_ILP32_OFF32 corresponds to
the configuration variable _XBS5_ILP32_OFF32.
If a getconf command is issued with one of these configuration
variables (for example, _XBS5_LPBIG_OFFBIG) and does not return
-1 or “undefined”, then a following getconf command with a -v
specification of XBS5_LPBIG_OFFBIG will determine values for
configuration variables corresponding to the XBS5_LPBIG_OFFBIG
compilation environment. For example:
%sh $ outstr=`getconf _XBS5_LPBIG_OFFBIG` $ if ["$outstr"!="-1"]
&& ["$outstr"!="undefined"] > then > cvars=`getconf -v
XBS5_LPBIG_OFFBIG XVS5_LPBIG_OFFBIG_id` > fi
The id in the system-wide configuration variable identifies
which configuration variables are to be returned. See the
description of XBS5_* variables under the heading “System Stan‐
dards Configuration Variables” for details about the id suffix.
OPERANDS
Name of a symbolic constant. (The symbolic constant names are listed in
the DESCRIPTION section under the heading “Specification Constants”.)
Name of a system-wide configuration variable. (These variable names are
listed in the DESCRIPTION section under the headings “System-Wide Con‐
figuration Variables” and “System Standards Configuration Variables”.)
Name of a system path-configuration variable. (These variable names are
listed in the DESCRIPTION section under the heading “System Path Con‐
figuration Variables”.) A path name for the path_var variable.
DESCRIPTION
In the system_var synopsis form, the getconf utility writes, to the
standard output, the value of the variable specified in the system_var
operand.
In the path_var synopsis form, the getconf utility writes, to the stan‐
dard output, the value of the variable specified by the path_var oper‐
and for the path specified by the pathname operand.
In both cases, the value reflects conditions in the current operating
environment.
The system_var argument specifies system-wide configuration variables
whose values are valid throughout the system. There are two kinds of
system-wide configuration values: System-wide configuration variables
System standards configuration variables
The path_var argument specifies system path-configuration variables
whose values contain information about paths and the path structure in
the system.
Specification Variables
Specifications return the value -1 or “undefined” if the implementation
of the standard in the system does not support the configuration
defined by the specification and a value other than -1 if the implemen‐
tation does support the configuration. If these are undefined, the
sysconf() function can be used to determine whether the configuration
is provided for a particular invocation of the application. This sym‐
bolic constant specifies that the implementation is to provide a C-lan‐
guage compilation environment with 32-bit int, long, pointer, and off_t
types. This symbolic constant specifies that the implementation is to
provide a C-language compilation environment with 32-bit int, long, and
pointer types and an off_t type using at least 64 bits. This symbolic
constant specifies that the implementation is to provide a C-language
compilation environment with a 32-bit int type and 64-bit long,
pointer, and off_t types. This symbolic constant specifies that the
implementation is to provide a C-language compilation environment with
an int type using at least 32 bits and long, pointer, and off_t types
using at least 64 bits.
System-Wide Configuration Variables
System-wide configuration variables contain the minimum values met
throughout all portions of the system. The following list defines the
system-wide configuration variables used with the getconf command: The
maximum length, in bytes, of the arguments for one of the exec func‐
tions, including environment data. [XPG4-UNIX] The maximum number of
functions that can be registered with atexit() per process. The maxi‐
mum value allowed for the obase variable with the bc command. The max‐
imum number of elements permitted in an array by the bc command. The
maximum value allowed for the scale variable with the bc command. The
maximum length of string constants accepted by the bc command. The
maximum number of bytes in a character class name. Number of bits in a
type of char. The maximum value of a type char. The minimum value of
a type char. The maximum number of simultaneous processes for each
real user ID. The number of clock ticks per second. The value of
CLK_TCK may be variable, and it should not be assumed that CLK_TCK is a
compile-time constant. The maximum number of weights that can be
assigned to an entry in the LC_COLLATE locale-dependent information in
a locale-definition file. A value for the PATH environment variable
that finds all standard utilities. [Tru64 UNIX] The maximum number of
data keys that may be created per process. The maximum number of
expressions that can be nested within parentheses by the expr command.
The maximum value of an int. The minimum value of an int. The maximum
length, in bytes, of a command's input line (either standard input or
another file) when the utility is described as processing text files.
The length includes room for the trailing newline character. Number of
bits in a long int. The maximum value of a long int. The minimum
value of a long int. The maximum number of bytes in a character for
any supported locale. The maximum number of simultaneous supplementary
group IDs for each process. The maximum value of digit in calls to the
printf() and scanf() functions. The maximum number of bytes in a LANG
name. The maximum message number. [Tru64 UNIX] The maximum number of
bytes in an N-to-1 collation mapping. The maximum set number. The
maximum number of bytes in a message string. Default process priority.
The maximum number of files that one process can have open at one time.
[XPG4-UNIX] The page size granularity for memory regions. [Tru64
UNIX] The maximum number of characters returned by getpass() (not
including terminating null). A value for the PATH environment variable
that finds all standard utilities. [Tru64 UNIX] The official name of
the installed operating system product. The maximum number of repeated
occurrences of a regular expression permitted when using the interval-
notation parameters, such as the m and n parameters with the ed com‐
mand. The maximum value of a type signed char. The minimum value of a
type signed char. The maximum value of a type short. The minimum
value of a type short. The maximum value that can be stored in an
object of type ssize_t. The number of streams that one process can
have open at one time. [Tru64 UNIX] The official system banner. The
banner typically consists of the vendor name followed by the product
name. [Tru64 UNIX] The product version information. The minimum num‐
ber of unique path names generated by tmpnam(). Maximum number of times
an application can call tmpnam() reliably. The maximum number of bytes
supported for the name of a time zone (not the length of the TZ envi‐
ronmental variable). The maximum value of a type unsigned char. The
maximum value of a type unsigned int. The maximum value of a type
unsigned long int. The maximum value of a type unsigned short int.
[Tru64 UNIX] The official abbreviated company name of the operating
system manufacturer. If no value was specified for this variable, the
VENDOR_NAME value is returned. [Tru64 UNIX] The official company name
of the operating system manufacturer. Number of bits in a word or type
int.
System Standards Configuration Variables
System standards configuration variables contain the minimum values
required by a particular system standard. The prefixes of the variables
indicate that the variables contain the minimum values for system char‐
acteristics required by particular standards. The correspondence
between the prefixes and standards is as follows:
────────────────────────────────────────────────────────────────────────────
Prefix Standard
────────────────────────────────────────────────────────────────────────────
_POSIX_ POSIX 1003.1 (POSIX.1)
POSIX2_ POSIX 1003.2 (POSIX.2)
_XOPEN_ X/Open
XBS5_ or _XBS5_ X/Open Version 5.1
_AES_ Open Software Foundation's AES sys‐
tem standard
────────────────────────────────────────────────────────────────────────────
System standards are system-wide minimums that the system meets to sup‐
port the particular system standard. Actual configuration values may
exceed these standards. The system standards configuration variables
for the getconf command are defined as follows: [Tru64 UNIX] The inte‐
ger value indicating the revision of the Application Environment Speci‐
fication to which the implementation is compliant. The length of the
arguments for one of the exec functions, in bytes, including environ‐
ment data. The maximum number of simultaneous processes for each real
user ID. This variable has a value of 1 if the system supports job
control; otherwise, the variable is undefined. This variable has a
value other than -1 if the implementation supports the creation of
locales by the localedef utility. The maximum value of a file's link
count. The maximum number of bytes in a terminal canonical input
queue. The maximum number of bytes for which space will be available
in a terminal input queue. The maximum number of bytes in a file name.
The maximum number of simultaneous supplementary group IDs for each
process. The maximum number of files that one process can have open at
one time. The maximum number of bytes in a path name. The maximum
number of bytes that can be written atomically when writing to a pipe.
[Tru64 UNIX] This variable has a value of 1 if the system supports
POSIX reentrant functions; otherwise, the variable is undefined. This
variable has a value of 1 if each process has a saved set-user-ID and a
saved set-group-ID; otherwise, the variable is undefined. The maximum
value that can be stored in an object of type ssize_t. The number of
streams that one process can have open at one time. [Tru64 UNIX] This
variable has a value of 1 if the system supports the POSIX threads
stack size attribute; otherwise, the variable is undefined. This vari‐
able has a value other than -1 if the implementation supports the pri‐
ority inheritance option. This variable has a value other than -1 if
the implementation supports the thread execution scheduling option.
[Tru64 UNIX] This variable has a value of 1 if the system supports
POSIX threads; otherwise, the variable is undefined. The maximum num‐
ber of bytes supported for the name of a time zone (not the length of
the TZ environmental variable). The date of approval of the most cur‐
rent version of the POSIX.1 standard that the system supports. The date
is a 6-digit number, with the first 4 digits signifying the year and
the last 2 digits the month. Different versions of the POSIX.1 standard
are periodically approved by the IEEE Standards Board, and the date of
approval is used to distinguish between different versions. The maxi‐
mum value allowed for the obase variable with the bc command. The max‐
imum number of elements permitted in an array by the bc command. The
maximum value allowed for the scale variable with the bc command. The
maximum of length string constants accepted by the bc command. One or
more terminal types capable of all operations described in ISO/IEC
9945. This value need not be present on a system not supporting the
User Portability Utilities Option. The maximum number of weights that
can be assigned to an entry of the LC_COLLATE locale variable in a
locale-definition file. The maximum number of expressions that can be
nested within parentheses by the expr command. The maximum length, in
bytes, of a command's input line (either standard input or another
file) when the utility is described as processing text files. The
length includes room for the trailing newline character. This variable
has a value of 1 if the system supports the creation of new locales
with the localedef command; otherwise, the variable is undefined. The
maximum number of repeated occurrences of a regular expression permit‐
ted when using the interval-notation parameters, such as the m and n
parameters with the ed command. This variable has a value of 1 if the
system supports the User Portability Utilities Option; otherwise, the
variable has a value of 0 (zero). The date of approval of the most
current version of the POSIX.2 standard that the system supports. The
date is a 6-digit number, with the first 4 digits signifying the year
and the last 2 digits the month. Different versions of the POSIX.2
standard are periodically approved by the IEEE Standards Board, and the
date of approval is used to distinguish between different versions.
This variable has a value of 1 if the system supports the optional C
Language Development Facilities specified by POSIX.2 and the optional C
Language Bindings Option from POSIX.2; otherwise, the variable is unde‐
fined. This variable has a value of 1 if the system supports the
optional C Language Development Utilities from POSIX.2; otherwise, the
variable is undefined. This value indicates the version of the inter‐
faces described in the C-Language Bindings Option section of the XPG4
standard. This value changes with each published version of ISO/IEC
9945 to indicate the 4-digit year and 2-digit month that the standard
was approved by the IEEE Standards Board. This variable has a value of
1 if the system supports the FORTRAN Development Utilities Option from
POSIX.2; otherwise, the variable is undefined. This variable has a
value of 1 if the system supports the FORTRAN Run-time Utilities Option
from POSIX.2; otherwise, the variable is undefined. This variable has
a value of 1 if the system supports the Software Development Utilities
Option from POSIX.2; otherwise, the variable is undefined. Same mean‐
ings as the -v specification variables. Note that the corresponding
specification variables do not have a leading underscore. See “Specifi‐
cation Variables” for definitions. These variables specify values to
be passed to utilities used in building an application. The name of the
parameter establishes type-size constraints for the environment in
which an application is being built: . The int, long, pointer, and
off_t types are treated as 32-bit types. The int, long, and pointer
types are treated as 32-bit types, and the off_t type is treated as a
type with at least 64 bits. The int type is treated as a 32-bit type,
and the long, pointer, and off_t types are treated as 64-bit types The
int type is treated as a type with at least 32 bits, and the long,
pointer, and off_t types are treated as types with at least 64 bits.
The parameter suffix (id) identifies the component affected by
the type-size constraint: The value of the parameter is the set
of initial options (compilation options) to be given to cc or
c89. The value of the parameter is the set of final options
(loader options) to be given to cc or c89. The value of the
parameter is the set of libraries to be given to cc or c89. The
value of the parameter is the set of checking options to be
given to lint.
In all cases, if sysconf (_SC_XBS5_ILP32_OFFBIG) returns -1, the
meaning of the passed values is unspecified. This variable has
a value other than -1 if the implementation supports the X/Open
Encryption Feature Group. This variable has a value other than
-1 if the implementation supports the X/Open Enhanced Interna‐
tionalization Feature Group. This variable has a value other
than -1 if the implementation supports the Legacy Feature Group.
This variable has a value other than -1 if the implementation
supports the X/Open Realtime Feature Group. This variable has a
value other than -1 if the implementation supports the X/Open
Realtime Threads Feature Group. This variable has a value other
than -1 if the implementation supports the X/Open Shared Memory
Feature Group. An integer indicating the most current version
of the X/OPEN standard that the system supports. An integer
value indicating the version of the XCU specification to which
the implementation conforms. If the value is -1, no commands and
utilities are provided on the implementation. This variable is
defined only if the implementation supports the X/Open Portabil‐
ity Guide, Volume 2, January 1987, XVS System Calls and
Libraries. This variable is defined only if the implementation
supports the X/Open Specification, February 1992, System Inter‐
faces and Headers, Issue 3. This variable is defined only if
the implementation supports the X/Open CAE Specification, July
1992, Systems Interfaces and Headers, Issue 4.
System Path Configuration Variables
The maximum value of a file's link count. If the pathname argument
refers to a directory, the value returned applies to the directory
itself. The maximum number of bytes in a terminal canonical input
queue. If the pathname argument does not specify a terminal file, the
getconf command exits with a nonzero value. The maximum number of
bytes for which space will be available in a terminal input queue. If
the pathname argument does not specify a terminal file, the getconf
command exits with a nonzero value. The maximum number of bytes in a
file name. If the pathname argument specifies a directory, the value
returned applies to the file names within the directory. The maximum
number of bytes in a path name. If the pathname argument specifies a
directory, the value returned is the maximum length of a relative path
name when the specified directory is the working directory. The maxi‐
mum number of bytes that can be written atomically when writing to a
pipe. If the pathname argument specifies a FIFO or a pipe, the value
returned applies to that object. If the pathname argument specifies a
directory, the value returned applies to any FIFO created in that
directory. If the pathname argument does not specify a directory or a
FIFO file, the getconf command exits with a nonzero value. This vari‐
able has a value of 1 when the use of the chown function is restricted
to a process with appropriate privileges and the group ID of a file can
only be changed to the effective group ID of the process or to one of
its supplementary group IDs. If the variable is undefined, it varies in
the system, depending upon the path. This variable has a value of 1
when path names longer than the limit specified by the NAME_MAX vari‐
able will generate an error. If the variable is undefined, it varies in
the system, depending upon the path. When this variable has a value of
1, terminal special characters, which are defined in the <termios.h>
header file, can be disabled. If the pathname argument does not specify
a terminal file, the getconf command will exit with a nonzero value.
EXIT STATUS
The following exit values are returned: The specified variable is valid
and information about its current state has been displayed success‐
fully. An error occurred.
EXAMPLES
To display the value of the ARG_MAX environment variable, enter: get‐
conf ARG_MAX To display the value of the PATH_MAX environmental vari‐
able for the /usr directory, enter: getconf PATH_MAX /usr
This sequence returns the following message: The value of
PATH_MAX in /usr is 1023
ENVIRONMENT VARIABLES
The following environment variables affect the execution of getconf:
Provides a default value for the internationalization variables that
are unset or null. If LANG is unset or null, the corresponding value
from the default locale is used. If any of the internationalization
variables contain an invalid setting, the utility behaves as if none of
the variables had been defined. If set to a non-empty string value,
overrides the values of all the other internationalization variables.
Determines the locale for the interpretation of sequences of bytes of
text data as characters (for example, single-byte as opposed to multi‐
byte characters in arguments). Determines the locale for the format
and contents of diagnostic messages written to standard error. Deter‐
mines the location of message catalogues for the processing of LC_MES‐
SAGES.
FILES
Defines system configuration variables. Defines system configuration
variables. Defines terminal characteristics.
SEE ALSO
Commands: env(1)
Functions: pathconf(2)
Routines: confstr(3), sysconf(3)
Environment: environ(5)
Standards: standards(5)getconf(1)