getconf 里面的常用参数整理,linux操作系统

用途
    将系统配置变量值写入标准输出。
    语法
    getconf [
    -v
     specification ] [
    SystemwideConfiguration
     |
    PathConfiguration
    
    PathName
    
    ] [
    DeviceVariable
    
    DeviceName
     ]
    getconf
    -a
    描述
    用 SystemwideConfiguration 参数调用 getconf 命令,将 SystemwideConfiguration 参数所指定的变量值写到标准输出。
    用 PathConfiguration 和 PathName 参数调用 getconf 命令,写入 PathConfiguration 参数为 PathName 参数指定路径指定的变量值,到标准输出。
    getconf 命令,用 -a 标志调用,并写入全部系统配置变量值到标准输出。
    getconf 命令,用 DeviceVariable 和 DeviceName 参数调用,写磁盘设备名或位置的值到标准输出,设备路径由 DeviceName 参数指定。
    如果在系统中定义指定的变量且其值描述为可从 confstr 子例程得到,则指定变量的值按以下格式写入:
    “%s\n”,
    否则,如果在系统中定义指定变量,其值按以下格式写入:
    “%d\n”,
    如果指定变量是有效的但在系统中未定义,则将以下内容写入标准输出:
    “undefined\n”
    如果变量名无效或出现错误,就会有一个诊断消息写入标准错误。
    标记
    -a specification
    显示了指定规格及版本,其配置变量等待确定。如果该标志未被指定,返回值将响应一个实现缺省值 XBS5 的相应的编辑环境。
    -v
    将全部系统配置变量值写入标准输出。
    参数
    PathName
    为 PathConfiguration 参数指定路径名。
    SystemwideConfiguration
    指定一个
    系统配置变量
    。
    PathConfiguration
    指定一个
    系统路径配置变量
    。
    DeviceName
    指定一个设备路径名。
    DeviceVariable
    指定一个设备变量。
    当列入以下的表格中的第一列符号被用作 system_var 操作数时,getconf 将产生与用第二列的值调用 confstr 时相同的值:
    注:
    _CS_AIX_ARCHITECTURE 和 _CS_AIX_BOOTDEV 变量,用做 confstr 参数时,只对 root 用户可用。
    system_var confstr 名称值
    BOOT_DEVICE
    _CS_AIX_BOOTDEV
    MACHINE_ARCHITECHTURE
    _CS_AIX_ARCHITECTURE
    MODEL_CODE
    _CS_AIX_MODEL_CODE
    PATH
    _CS_PATH
    XBS5_ILP32_OFF32_CFLAGS
    _CS_XBS5_ILP32_OFF32_CFLAGS
    XBS5_ILP32_OFF32_LDFLAGS
    _CS_XBS5_ILP32_OFF32_LDFLAGS
    XBS5_ILP32_OFF32_LIBS
    _CS_XBS5_ILP32_OFF32_LIBS
    XBS5_ILP32_OFF32_LINTFLAGS
    _CS_XBS5_ILP32_OFF32_LINTFLAGS
    XBS5_ILP32_OFFBIG_CFLAGS
    _CS_XBS5_ILP32_OFFBIG_CFLAGS
    XBS5_ILP32_OFFBIG_LDFLAGS
    _CS_XBS5_ILP32_OFFBIG_LDFLAGS
    XBS5_ILP32_OFFBIG_LIBS
    _CS_XBS5_ILP32_OFFBIG_LIBS
    XBS5_ILP32_OFFBIG_LINTFLAGS
    _CS_XBS5_ILPBIG_OFF32_LINTFLAGS
    XBS5_LP64_OFF64_CFLAGS
    _CS_XBS5_LP64_OFF64_CFLAGS
    XBS5_LP64_OFF64_LDFLAGS
    _CS_XBS5_LP64_OFF64_LDFLAGS
    XBS5_LP64_OFF64_LIBS
    _CS_XBS5_LP64_OFF64_LIBS
    XBS5_LP64_OFF64_LINTFLAGS
    _CS_XBS5_LP64_OFF64_LINTFLAGS
    XBS5_LPBIG_OFFBIG_CFLAGS
    _CS_XBS5_LPBIG_OFFBIG_CFLAGS
    XBS5_LPBIG_OFFBIG_LDFLAGS
    _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
    XBS5_LPBIG_OFFBIG_LIBS
    _CS_XBS5_LPBIG_OFFBIG_LIBS
    XBS5_LPBIG_OFFBIG_LINTFLAGS
    _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
    环境变量
    以下的环境变量影响 getconf 的执行:
    LANG
    为取消设置或空的国际化变量值提供一个缺省值。如果 LANG 被取消设置或空,则将使用来自依赖实现的 | 缺省语言环境的相应值。如果任何一个国际化变量包含一个无效设置,实用程序将象未定义变量义变量来运行。
    LC_CALL
    如果设置为一个非空字符串值,则所有其他国际化变量值会被覆盖。
    LC_CTYPE
    确定将文本数据字节序列解释为字符的语言环境(例如,在参数中,单字节字符与多字节字符相对)。
    LC_MESSAGES
    确定用以影响写入标准错误的诊断消息格式和内容的语言环境。
    NLSPATH
    决定处理 LC_MESSAGES 消息目录的位置。
    系统范围配置变量
    SystemwideConfiguration 参数指定系统配置变量,其值在整个系统中都可用。有两种系统配置变量:
    系统范围配置变量
    
    系统标准配置变量
    
    系统范围配置变量
    系统范围配置变量包含系统各部分中的最小值。以下的列表定义系统范围配置变量,这些变量与 getconf 命令一起使用:
    _CS_PATH
    PATH 环境变量值,用以查找命令。
    ARG_MAX
    用于一个
    exec
     子例程的参数的最大长度(以字节计),包含环境数据。
    BC_BASE_MAX
    bc
     命令使用的 obase 变量允许的最大值。
    BC_DIM_MAX
    bc
     命令所允许的一个数组中的最大元素数。
    BC_SCALE_MAX
    bc
     命令使用的 scale 变量允许的最大值。
    BC_STRING_MAX
    bc
     命令可接受的字符串常量的最大长度。
    CHARCLASS_NAME_MAX
    字符类名中的最大字节数。
    CHAR_BIT
    类型 character 的位数。
    CHAR_MAX
    类型 character 的最大值。
    CHAR_MIN
    类型 character 的最小值。
    CHILD_MAX
    每个真实用户标识同时打开进程的最大数量。
    CLK_TCK
    由
    time
     子例程返回的每秒钟时钟计数。
    COLL_WEIGHTS_MAX
    配给在一个语言环境定义文件的 LC_COLLATE 语言环境节中条目的最大权重。
    CS_PATH
    PATH 环境变量值,用以查找命令。
    EXPR_NEST_MAX
    圆括号内可嵌套的最大表达式数,用于
    expr
     命令。
    INT_MAX
    类型的最大值,类型为 int。
    INT_MIN
    类型的最小值,类型为 int。
    LINE_MAX
    当实用程序被描述成为处理文本文件时,命令输入行(标准输入或者是其他文件)的最大长度(以字节计)。长度包含换行字符的空间。
    LONG_BIT
    类型中的位数,类型为 long int。
    LONG_MAX
    类型的最大值,类型为 long int。
    LONG_MIN
    类型的最小值,类型为 long int。
    MB_LEN_MAX
    在所有支持的语言环境中一个字符的最大字节数。
    NGROUPS_MAX
    每个进程中同时补充的最大组标识数。
    NL_ARGMAX
    在 printf 和 scanf 子例程调用中的数字最大值。
    NL_LANGMAX
    在一个 LANG 名中最大字节数。
    NL_MSGMAX
    最大消息数。
    NL_NMAX
    一个从 N 到 1 整序映射中最大字节数。
    NL_SETMAX
    最大设置数。
    NL_TEXTMAX
    一个消息字符串中最大字节数。
    NZERO
    缺省进程优先级。
    OPEN_MAX
    在进程中可同时打开的最大文件数。
    PATH
    用以查找命令的以冒号相隔的路径前缀的序列。
    RE_DUP_MAX
    当使用间隔符号参数时允许正则表达式重复出现次数的最大值,正如
    ed
     命令使用的 m 和 n 参数。
    SCHAR_MAX
    类型的最大值,类型为 signed char。
    SCHAR_MIN
    类型的最小值,类型为 signed char。
    SHRT_MAX
    类型的最大值,类型为 short。
    SHRT_MIN
    类型的最小值,类型为 short。
    SSIZE_MAX
    一个类型为 ssize_t 的对象的最大值。
    STREAM_MAX
    一个进程可同时打开的流数。
    TMP_MAX
    由 tmpnam 子例程生成的唯一路径名的最小数量。一个应用程序可靠调用 tmpnam 子例程的最多次数。
    TZNAME_MAX
    一个时区名支持的最大字节数(非 TZ 环境变量的长度)。
    UCHAR_MAX
    类型的最大值,类型为 unsigned char。
    UINT_MAX
    类型的最大值,类型为 unsigned int。
    ULONG_MAX
    类型的最大值,类型为 unsigned long int。
    USHRT_MAX
    类型的最大值,类型为 unsigned short int。
    WORD_BIT
    字或类型 int 中的位数。
    KERNEL_BITMODE
    内核的位方式,32 位或 64 位.
    REAL_MEMORY
    真实内存大小。
    HARDWARE_BITMODE
    计算机硬件的位方式,32 位或 64 位。
    MP_CAPABLE
    计算机微处理器容量。
    系统标准配置变量
    系统标准配置变量包含由一个特殊系统标准所要求的最小值。_POSIX_、POSIX2_ 和 _XOPEN_ 前缀显示变量包含分别由 POSIX 1003.1、POSIX 1003.2 和 X/Open 系统标准要求的系统特性最小值。系统标准是系统满足的用来支持特定系统标准的全系统最小值。实际配置值可能超出这些标准。用于 getconf 命令的这些系统标准配置变量的定义如下:
    _POSIX_ARG_MAX
    用于
    exec
     子例程的参数的最大长度(以字节为长度),包含环境数据。
    _POSIX_CHILD_MAX
    每个真实用户标识同时打开进程的最大数量。
    _POSIX_JOB_CONTROL
    如果系统支持作业控制,则值为 1。
    _POSIX_LINK_MAX
    到单个文件的最大链接数。
    _POSIX_MAX_CANON
    在终端规范输入队列中的最大字节数。
    _POSIX_MAX_INPUT
    在终端输入队列中允许的最大字节数。
    _POSIX_NAME_MAX
    文件名中的最大字节数(不包含终止空字符)。
    _POSIX_NGROUPS_MAX
    每个进程中同时补充的最大组标识数。
    _POSIX_OPEN_MAX
    在进程中可同时打开的最大文件数。
    _POSIX_PATH_MAX
    路径名中的最大字节数。
    _POSIX_PIPE_BUF
    写入管道时保证成为原子的最大字节数。
    _POSIX_SAVED_IDS
    值为1。每个进程具有保存的 set-user-ID 和保存的 set-group-ID。
    _POSIX_SSIZE_MAX
    可存进一个类型为 ssize_t 对象的最大值。
    _POSIX_STREAM_MAX
    一个进程可同时打开的流数。
    _POSIX_TZNAME_MAX
    一个时区名支持的最大字节数(非 TZ 环境变量的长度)。
    _POSIX_VERSION
    操作系统遵守的 POSIX 1 标准(C语言绑定)的版本。
    _XOPEN_CRYPT
    如果系统支持 X/Open 加密功能组则值为 1。
    _XOPEN_ENH_I18N
    如果系统支持 X/Open 增强国际化功能组则值为 1。
    _XOPEN_SHM
    如果系统支持 X/Open 共享内存功能组则值为 1。
    _XOPEN_VERSION
    操作系统所遵守的 X/Open 可移植性指南的版本。
    _XOPEN_XCU_VERSION
    操作系统所遵守的 X/Open 命令和实用程序规范的版本。
    _XOPEN_XPG2
    如果系统支持 1987 年 1 月卷 2 的 X/Open 可移植性指南,XVS 系统调用和库,则值为 1,否则为未定义。
    _XOPEN_XPG3
    如果系统支持 1992 年 2 月的 X/Open 规范,系统接口和头第三版,则缺省值为 1,否则为未定义。
    _XOPEN_XPG4
    如果系统支持 1992 年 7 月的 X/Open CAE 规范,系统接口和头第 4 版,则值为 1,否则为未定义。
    POSIX2_BC_BASE_MAX
    允许的最大值,用于 obase 变量并使用
    bc
     命令。
    POSIX2_BC_DIM_MAX
    bc
     命令允许数组中的最大元素数。
    POSIX2_BC_SCALE_MAX
    允许的最大值,用于 scale 变量,执行
    bc
     命令。
    POSIX2_BC_STRING_MAX
    可被
    bc
     命令接受的字符串常量的最大长度。
    POSIX2_CHAR_TERM
    系统支持至少一个终端类型则值为 1;否则值为 -1。
    POSIX2_COLL_WEIGHTS_MAX
    配给一个条目的最大权重数目,条目在一个语言环境定义文件中的 LC_COLLATE 语言环境变量中。
    POSIX2_C_BIND
    如果系统支持 POSIX 2 中的 C 语言绑定选项,则值为 1;否则,值为-1。
    POSIX2_C_DEV
    如果系统支持 POSIX 2 中的 C 语言开发实用程序则值为 1;否则,值为 -1。
    POSIX2_C_VERSION
    操作系统所遵守的 POSIX 2 标准(C 语言绑定)的版本。
    POSIX2_EXPR_NEST_MAX
    圆括号内可嵌套的最大表达式数,用于
    expr
     命令。
    POSIX2_FORT_DEV
    如果系统支持 POSIX 2 中的 FORTRAN 开发实用程序选项则值为 1;否则,值为 -1。
    POSIX2_FORT_RUN
    如果系统支持 POSIX 2 中的 FORTRAN 运行时实用程序选项则值为 1;否则,值为 -1。
    POSIX2_LINE_MAX
    当命令被描述成处理文本文件时,一个命令输入行(标准输入或其他文件)的最大字节长度。长度包含换行字符空间。
    POSIX2_LOCALEDEF
    如果系统支持由
    localedef
     命令创建语言环境,则值为 1;否则值未定义。
    POSIX2_RE_DUP_MAX
    当使用间隔计数参数时正则表达式所允许重复出现的最大值,例如带 m 和 n 参数使用
    ed
     命令。
    POSIX2_SW_DEV
    系统支持软件开发实用程序选项则值为 1;否则,值为 -1。
    POSIX2_UPE
    如果系统支持 POSIX 2 中用户可移植实用程序选项,则值为 1;否则,值为 -1。
    POSIX2_VERSION
    系统支持的 POSIX 2 标准的最新版本的批准日期。这个日期是一个六位数字,前四位数字表示年份后两位数字表示月份。POSIX 2 标准的不同版本由 IEEE 标准委员会定期批准,批准日期用于区分不同版本。
    系统路径配置变量
    PathConfiguration 参数指定了系统路径配置变量,该变量值包含在系统中的路径和路径结构信息。以下的列表定义了这些变量:
    _POSIX_CHOWN_RESTRICTED
    chown() 子例程以适当的特权限制在进程,并且将文件的组标识只更改为进程的有效组标识或辅助组标识之一。如果 PathName 参数引用目录,其返回值应用于除在目录中已存在的或可被创建的目录外的所有文件。
    _POSIX_NO_TRUNC
    路径名长于变量 NAME_MAX 指定的限定值就会产生错误。如果 PathName 参数引用目录,其返回值应用于目录中的文件名。
    _POSIX_VDISABLE
    终端特殊字符,定义在
    termios.h
     文件中,可使用该字符值禁用。
    LINK_MAX
    链接一个文件的最大链接数。如果 PathName 参数引用目录,则返回值应用于该目录。
    MAX_CANON
    在终端规范输入行中的最大字节数。
    MAX_INPUT
    在终端输入队列有可用空间的最大字节数。
    NAME_MAX
    文件名中的最大字节数(不包含终止空字符)。如果 PathName 参数引用目录,返回值应用于目录内的文件名。
    PATH_MAX
    路径名中的最大字节数,包含终止空字符。如果 PathName 参数引用目录,返回值为当指定目录是工作目录时的相对路径名的最大长度。
    PIPE_BUF
    当写入管道时保证成为原子的最大字节数。如果这个 PathName 参数指向先进先出或是管道,其返回值应用于引用对象。如果 PathName 参数引用目录,返回值应用于任何已存在的或可在目录内创建的先进先出。
    DISK_PARTITION
    磁盘的物理分区大小。
    注:
    对于 DISK_PARTITION 路径配置变量,这个 PathName 参数必须指定为之查询信息的磁盘的完整路径。
    DISK_SIZE
    磁盘大小以兆字节计。
    注:
    对于 DISK_SIZE 路径配置变量,这个 PathName 参数必须指定为之查询信息的磁盘的完整路径。
    设备变量
    DeviceVariable 参数显示了这个 DeviceName 参数是一个设备路径,例如 /dev/hdisk0。给定一个磁盘的路径,则这个 getconf 命令显示这个磁盘的设备名或位置。
    DISK_DEVNAME
    设备名或设备位置。
    退出状态
    此命令返回以下出口值:
    0
    这个指定变量是有效的并且其当前状态的信息已被成功写入。
    >0
    发生错误。
    显示变量 ARG_MAX 的值,请输入:
    getconf ARG_MAX
    显示所有系统配值变量值,输入:
    getconf -a
    显示变量 NAME_MAX 的值,用于 /usr 目录,请输入:
    getconf NAME_MAX /usr
    以下 shell 命令显示怎样处理未指定结果:
    if value=$(getconf PATH_MAX /usr)
    then
    if [ "$value" = "undefined" ]
    then
    echo The value of PATH_MAX in /usr is undefined.
    else
    The value of PATH_MAX in /usr is $value.
    fi
    else
    echo Error in the getconf command.
    fi
    示例
    显示变量 ARG_MAX 的值,请输入:
    getconf ARG_MAX
    显示变量 NAME_MAX 的值,用于 /usr 目录,请输入:
    getconf NAME_MAX /usr
    以下 shell 命令显示怎样处理未指定结果:
    if value=$(getconf PATH_MAX /usr)
    then if [ "$value" = "undefined" ]
    then
    echo The value of PATH_MAX in /usr is undefined.
    else
    echo The value of PATH_MAX in /usr is $value.
    fi
    else
    echo Error in the getconf command.
    fi
    如果命令:
    getconf _XBS5_ILP32_OFF32
    没有写入 -1\n 或 undefined\n 到标准输出,则表单命令:
    getconf -v XBS5_ILP32_OFF32 ...
    将确定相应于 XBS5_ILP32_OFF32 编译环境的配置变量值。编译环境指定于 c89,扩展描述。
    如果命令:
    getconf _XBS5_ILP32_OFFBIG
    没有写入 -1\n 或 undefined\n 到标准输出,则表单命令:
    getconf -v XBS5_ILP32_OFFBIG ...
    将确定相应于 XBS5_ILP32_OFFBIG 编译环境的配置变量值,编译环境值指定于 c89,扩展描述。
    如果命令:
    getconf _XBS5_LP64_OFF64
    没有写入 -1\n 或 undefined\n 到标准输出,则表单命令:
    getconf -v XBS5_LP64_OFF64 ...
    将确定相应于 XBS5_LP64_OFF64 编译环境的配置变量值,编译环境值指定于 c89,扩展描述。
    如果命令:
    getconf _XBS5_LPBIG_OFFBIG
    没有写入 -1\n 或 undefined\n 到标准输出,则如下形式的命令:
    getconf -v _XBS5_LPBIG_OFFBIG
    将确定相应于在 c89,扩展描述中指定的 XBS5_LPBIG_OFFBIG 编译环境的配值变量值。
    确定磁盘 hdisk0 大小,若是 root 用户,则输入以下:
    getconf DISK_SIZE /dev/hdisk0
    确定实际内存大小,输入以下:
    getconf REAL_MEMORY
    确定是否机器硬件是 32 位或 64 位,则输入以下:
    getconf HARDWARE_BITMODE
    确定是否内核是 32 位或 64 位,则输入以下:
    getconf KERNEL_BITMODE
    确定磁盘 hdisk0 的设备名或位置,则输入以下:
    getconf DEVICE_NAME /dev/hdisk0
    文件
    /usr/bin/getconf
    包含一个 getconf 命令。
    /usr/include/limits.h
    定义系统配置变量。
    /usr/include/unistd.h
    定义系统配置变量。
    相关信息
    confstr
     子例程,
    pathconf
     子例程,
    sysconf
     子例程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值