getconf 命令
getconf 命令
用途
将系统配置变量值写入标准输出。 系统的默认参数,比如mkfs读取默认参数,并格式化,默认PAGESIZE是4096
语法
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 规格 | 显示了指定规格及版本,其配置变量等待确定。如果该标志未被指定,返回值将响应一个实现缺省值 XBS5 的相应的编辑环境。 |
-v | 将全部系统配置变量值写入标准输出。 |
参数
PathName | 为 PathConfiguration 参数指定路径名。 |
SystemwideConfiguration | 指定一个系统配置变量。 |
PathConfiguration | 指定一个系统路径配置变量。 |
DeviceName | 指定一个设备路径名。 |
DeviceVariable | 指定一个设备变量。 |
当列入下列的表格中的第一列符号被用作 system_var 操作数时,getconf 将产生与用第二列的值调用 confstr 时相同的值:
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 | 定义系统配置变量。 |
查看os系统数据块的大小
[oracle@skate-test ~]$ getconf PAGESIZE
4096
参考
http://blog.chinaunix.net/uid-23105261-id-109513.html
http://blog.chinaunix.net/uid-23105261-id-109513.html
http://blog.163.com/drachen@126/blog/static/162607494201271435333906/
getconf 命令的更多相关文章
- 灵活使用getconf命令来获取系统信息
http://blog.chinaunix.net/uid-23105261-id-109513.html 灵活使用getconf命令来获取系统信息 我们时常需要查询系统相关的信息,比如页面大小,整数 ...
- getconf命令【一天一个命令】
我们时常需要查询系统相关的信息,比如页面大小,整数大小之类,如果编写程序去计算会比较繁琐,这里有一个很有用的命令,可以用来获取系统相关信息.它就是getconf. $ getconf PAGE_S ...
- Linux命令——getconf
转自:灵活使用getconf命令来获取系统信息 简介 getconf本身是个ELF可执行文件,用于获取系统信息 用法 getconf -a可以获取全部系统信息 对于这个命令,记住几个常用的信息获取方法 ...
- 运维工程师必会的109个Linux命令
运维工程师必会的109个Linux命令 版本1.0 崔存新 更新于2009-12-26 目录 1 文件管理 6 1.1 basename 6 1.2 cat 6 1.3 cd 7 1.4 chgrp ...
- 查看Linux系统架构类型的5条常用命令
导读 很多时候我们都需要查看当前 Linux 系统是 32 位还是 64 位系统架构类型,本文中我将向大家推荐 5 条常用命令.无论你使用的是桌面版或是只装了文本界面的 Linux 环境,以下命令几乎 ...
- getconf
用途 将系统配置变量值写入标准输出. 语法 getconf [ -v specification ] [ SystemwideConfiguration | PathConfiguration Pat ...
- 【Linux】linux命令大全
[注意]:命令[compgen -b]可以列出所有当前系统支持的命令. 109个Linux命令 目录 1 文件管理... 5 1.1 basename. 5 1.2 ...
- linux学习(1):linux命令大全
Linux命令 目录 1 文件管理... 5 1.1 basename. 5 1.2 cat 5 1.3 cd. 5 1.4 ...
- Linux基础命令汇总109条
1 文件管理 1.1 basename 1.1.1 功能说明 从文件名中去掉路径和扩展名 例:basename include/stdio.h .h Output &quo ...
随机推荐
- android之listview
首先建立res/layout/data_list.xml: 代码如下: <?xml version="1.0" encoding="utf-8"?> ...
- lucene 3.0.2 搜索
1.lucene 词频 转载:http://mxdxm.iteye.com/blog/989031 lucene in action作为action系列,确实坚持了其实用性的特色.全书花了很大的篇幅来 ...
- 《GK101任意波发生器》升级固件发布(版本:1.0.1build803)
一.固件说明: 硬件版本:0,logic.3 固件版本:1.0.1.build803 编译日期:2014-08-06 ====================================== 二. ...
- Android 通用流行框架大全
1. 缓存 DiskLruCache Java实现基于LRU的磁盘缓存 2.图片加载 Android Universal Image Loader 一个强大的加载,缓存,展示图片的库 Picas ...
- Go学习记录
操作系统:Windows 一.下载 go官网:https://golang.org/go下载地址:https://golang.org/dl/ 二.安装 安装包有msi安装版本,以及zip压缩包版本. ...
- 【转】Java跨平台原理
原文地址:http://www.cnblogs.com/gw811/archive/2012/09/09/2677386.html 1.是么是平台 Java是可以跨平台的编程语言,那我们首先得知道什么 ...
- [源码]随机获取虾米音乐song_id API文件
[源码]随机获取虾米音乐song_id API文件 January 11, 2015 注意:此API请放置于国内主机使用,如香港.北京等等,否则会提示:虾米音乐在您所处的国家或地区暂时无法使用 < ...
- Oracle 常见问题
查看Oracle数据库是否安装成功 sqlplus /nolog SQL>conn / as sysdba Connected to an Idle instance(表明成功) SQL> ...
- Linux命令echo -e
在Linux命令中 echo -e 这个参数e是什么意思. echo –e “I will use ‘touch’ command to create 3 files.” 这里参数e的作用是什么 ma ...
- 8.PHP内核探索:再次探讨SAPI
在PHP的生命周期的各个阶段,一些与服务相关的操作都是通过SAPI接口实现. 这些内置实现的物理位置在PHP源码的SAPI目录.这个目录存放了PHP对各个服务器抽象层的代码, 例如命令行程序的实现,A ...