man命令

man命令

  • man是manual的缩写(有问题找男人帮忙)

  • 使用方法:man [章数] [命令]

  • 可以查询到要查询的命令具体作用、参数选项、描述等。查看完毕后按 q 退出

  • man命令本身也是一个命令,所以可以通过 [man man] 命令查看此命令本身的一些帮助文档

man命令帮助内容

man命令帮助内容一共可以有九章的帮助内容,分别如下:

  1. Commands 用户可从 shell 运行的命令,查询第一章的内容的时候 1 可以省略
  2. System calls 必须由内核完成的功能,系统调用
  3. Library calls 大多数 libs 函数,如 sort(3) 此命令与第三章命令一般是用在我们在编程过程中获取函数的帮助文档使用的
  4. Special files /dev 目录中的文件,第四章和第五章主要是文件的帮助
  5. File formats and conventions /etc/pass 等人类可读的配置文件等格式及说明
  6. Game
  7. Macro packages and conveentions 文件系统标准描述,网络协议,ASCII和其他字符集等
  8. System Management commands 类似 mount(8) 等命令,大部分只能由 root 执行
  9. Kernel routes 废弃的章节,原本是想把一些关于核心的文件放在这里

man一共有九个章节的帮助,分为这么多章主要是因为命令和系统调用还有文件有的时候会出现重名的情况,一旦重名,我们只单用一个man不加章节很难区分

例如 passwd 命令,这个命令是进行用户密码设置的命令,但是在我们的 /etc 目录下,还有一个 passwd 的一个配置文件,如果我们只使用 man passwd 的命令,很难区分出到底是对这个命令的帮助文档,还是对这个配置文件的帮助文档,这时,我们就可以通过章节这个参数来进行区分

有的时候我们并不知道要查看的帮助到底是命令还是配置文件等,可以使用 man a [参数] 来详细查看所有的帮助文档,在查看完一条之后,按 q 退出,即会提示有其他条的帮助文档,我们可以选择查看

man命令说明页含义

标头 含义
Name 命令的名称和用途
Synopsis 命令语法
Description 完整描述
Environment 命令使用的环境变量
Author 开发该程序者
Files 对该命令重要的文件列表
See also 相关信息
Diagnostics 可能的错误和警告
Bugs (可能没有)

help命令

help命令也是帮助命令,它使用分为内部命令使用帮助、外部命令使用帮助

内部命令和外部命令

shell(命令解释器)自带的命令成为内部命令,其他的是外部命令

内部命令

内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并驻留在系统内存中。内部命令是写在bashy源码里面的,其执行速度比外部命令快,因为解析内部命令shell不需要创建子进程。比如:exit,history,cd,echo等。

外部命令

外部命令是linux系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在shell中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin 等等。可通过 “echo $PATH” 命令查看外部命令的存储路径,比如:ls、vi等。

使用type命令区分内外部命令

使用方法:type [命令]

1
2
3
4
root@CHJ-20190520VPS:~# type cd
cd is a shell builtin
root@CHJ-20190520VPS:~# type mkdir
mkdir is /bin/mkdir

内部命令和外部命令最大的区别之处就是性能。内部命令由于构建在shell中而不必创建多余的进程,要比外部命令执行快得多。因此和执行更大的脚本道理一样,执行包含很多外部命令的脚本会损害脚本的性能。

help命令用法

  • 内部命令

    help  [命令]
  • 外部命令

    [命令]  --help

帮助命令总结

Linux的基本操作方式是命令行,通过命令行的话就需要熟记很多的操作命令,但是海量的命令不适合死记硬背。

当我们使用到陌生的命令的时候,就可以使用 man help 等帮助命令查询它的帮助文档,来帮助我们了解这些命令。

注意:很多内部命令 man 是没有帮助文档的,所以我们使用更多的应该是 help 命令。

which命令

查看可执行文件的位置,从全局环境变量PATH里面查找对应的路径,默认是找 bash内所规范的目录,一般用来确认系统中是否安装了指定软件

在PATH变量指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果

使用方法:which [参数] 命令

  • -a 打印出PATH中的所有匹配项,而不是仅仅第一个

  • –skip-dot 跳过PATH中以点开头的目录

  • –skip-tilde 跳过PATH中以波浪号开头的目录

使用示例:

1
2
3
4
root@CHJ-20190520VPS:~# which shutdown
/sbin/shutdown
root@CHJ-20190520VPS:~# which cd
root@CHJ-20190520VPS:~#

注意:我们发现查找 cd 命令竟然没有找到,这是因为 cd 是bash 内建的命令! 但是 which 默认是找 PATH 内所规范的目录,所以当然一定找不到的

最后更新: 2019年07月27日 13:13

原始链接: https://jjw-story.github.io/2019/07/06/帮助命令/

× 请我吃糖~
打赏二维码