在 Ubuntu(以及其它 Linux 发行版)里,getconf 的作用是查询系统配置变量的值,比如系统位数、路径最大值、线程相关限制等。下面从「是什么 → 怎么用 → 常见示例 → 注意事项」给你讲清楚。
getconf 读取的是 POSIX / 系统定义的标准配置参数,这些参数通常来自:
它不是随便查任何东西,而是查“系统能力和限制”。
getconf 变量名
例如:
getconf LONG_BIT
输出:
64
表示系统是 64 位。
-p)getconf -p 变量名
例如:
getconf -p PATH_MAX
输出:
4096
⚠️ 注意:
getconf VAR 查的是当前系统getconf -p VAR 查的是 POSIX 路径相关限制getconf LONG_BIT
getconf NAME_MAX
getconf PATH_MAX
getconf THREAD_DESTRUCTOR_ITERATIONS
getconf THREAD_KEYS_MAX
getconf PAGE_SIZE
或
getconf PAGESIZE
getconf _NPROCESSORS_CONF
getconf _NPROCESSORS_ONLN
一个是配置 CPU 数,一个是在线 CPU 数。
getconf -a
会列出所有支持的配置变量,非常有用。
你也可以配合搜索:
getconf -a | grep -i thread
bits=$(getconf LONG_BIT)
if [ "$bits" = "64" ]; then
echo "64-bit system"
fi
❌ 错误用法:
getconf memory
getconf cpu
这些不是 getconf 的变量,会报错。
✅ 正确思路:
getconf -a | grep xxx-puname 的区别(很多人会混)| 命令 | 用途 |
|---|---|
uname -m |
架构(x86_64) |
getconf LONG_BIT |
程序运行位数 |
getconf -a |
系统限制参数 |
如果你愿意,可以告诉我:
我可以直接给你“最合适的一条命令”。