为何Mac OS Big Sur终端无法使用--help/-h获取命令帮助
问题解答
核心原因
- 你使用的
cd、pwd属于shell内置命令,不属于独立的外部工具。这类命令不会识别-h、--help作为帮助参数,传入的参数会被当作普通操作对象处理,比如cd --help会被识别为要进入名为--help的目录,自然会报路径不存在的错误。 - macOS默认搭载的命令行工具为BSD版本,和Linux系统常用的GNU版本工具逻辑存在差异:BSD工具几乎都不支持
--help长参数,部分工具的-h参数也不是帮助作用,比如你测试的ls -h,在BSD的ls逻辑里是要求输出人类可读的文件大小单位,因此执行后只会正常列出目录内容,不会输出帮助信息。
正确获取帮助的方法
- 查看shell内置命令帮助:执行
help [命令名]即可,例如help cd、help pwd - 查看所有外部工具、内置命令的通用帮助方案:使用你测试可用的
man [命令名]调用官方手册即可,BSD和GNU工具都兼容该用法。
如果习惯使用GNU工具的--help交互逻辑,可以通过Homebrew安装GNU coreutils组件,安装后可通过加g前缀调用对应GNU工具,例如gls --help、gpwd --help就能得到和Linux一致的帮助输出。
内容的提问来源于stack exchange,提问作者Lora
相关产品推荐
相关产品推荐

