重庆思庄Oracle、Redhat认证学习论坛

标题: command --help 与help command 的区别? [打印本页]

作者: 郑全    时间: 2018-1-7 18:06
标题: command --help 与help command 的区别?
很多时候,我们在找某个命令的帮助时,使用的是command --help 方式
但有时候,这样执行会报错,要按 help command执行,
比如 ls  --help

[kiosk@foundation0 Desktop]$ ls --help
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

...

如果对cd命令这样执行:
[kiosk@foundation0 Desktop]$ cd --help
bash: cd: --: invalid option
cd: usage: cd [-L|[-P [-e]]] [dir]
[kiosk@foundation0 Desktop]$


可以看到,cd命令这样执行帮助,报错。

为什么呢?

原因是linux把命令分为了两种,一种是bash自带的命令,另一种是其他软件带的,前者叫内部命令,后者叫外部命令。
我们可以通过type command 来确认命令是外部命令,还是内部命令,如果是外部命令,就用 command --help,内部命令就用 help command

比如

[kiosk@foundation0 Desktop]$ type cd
cd is a shell builtin

这个时候,使用help cd 才能看帮助
如下:
[kiosk@foundation0 Desktop]$ help cd
cd: cd [-L|[-P [-e]]] [dir]
    Change the shell working directory.
   
    Change the current directory to DIR.  The default DIR is the value of the
    HOME shell variable.
...

[kiosk@foundation0 Desktop]$ type ls
ls is aliased to `ls --color=auto'

使用ls --help






欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2