前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux中如何快速获取帮助信息

linux中如何快速获取帮助信息

作者头像
编程珠玑
发布2019-09-02 22:44:44
2.1K0
发布2019-09-02 22:44:44
举报
文章被收录于专栏:编程珠玑

前言

对于一些新的或者不常用的命令和函数,我们常常需要查询使用方法或者参数详情,在linux下我们不需要去网上查询,完全可以利用linux自带的手册查看帮助信息。这就是我们今天要介绍的man命令。

基本介绍

实际上man命令并非仅仅能查看命令或者函数的介绍,在linux中,有丰富的帮助手册信息,并且每一个手册都有一个编号。编号和对应内容如下:

编号

代表内容

1

可执行程序或shell命令,如ls

2

系统调用,如chdir

3

库函数,如printf

4

设备或特殊文件,如tty

5

配置文件格式或约定

6

游戏

7

杂项

8

管理命令,通常只有root用户可以使用

9

内核例程

n

内置命令,如cd

对于内置命令,还可以使用help命令查看帮助手册,例如:

代码语言:javascript
复制
help cd

判断命令是什么类型可使用type命令,例如:

代码语言:javascript
复制
type cd 
cd is a shell builtin

手册内容

多数手册包含以下几部分内容:

  • NAME 功能的简单描述
  • SYNOPSIS 语法格式
  • DESCRIPTION 描述
  • OPTIONS 选项
  • ERRORS 描述出错场景,这在排查错误时很有帮助
  • NOTES 注意事项
  • FILES 相关文件,例如对于man命令的FILES部分内容显示了它的配置文件位置等信息
  • EXAMPLES 使用示例,会提供一些简单的示例
  • BUGS 存在的bug,当遇到奇怪的问题时,不妨看看当前命令是否有已知的bug

基本查看

手册的查看和less查看文本类似,可以参考Linux常用命令--文本查看篇或查看less命令的使用,这里介绍基本操作:

  • 空格 向下翻页
  • Home 回到第一页
  • End 跳到最后一页
  • /string 向前搜索string字符串
  • ?string 向后搜索string字符串
  • n 下一个匹配字符
  • N 上一个匹配字符
  • q 退出

工作流程简述

man命令所展示的帮助信息都是存在于linux系统中的,流程是怎样的呢?

1.搜索$PATH环境变量指定路径。

2.搜索/etc/manpath.config文件中MANPATH中指定的路径。

3.使用指定的解压工具进行解压处理。

4.使用文本查看命令显示手册内容。

配置文件的位置可通过查看FILES部分内容找到:

代码语言:javascript
复制
man man
FILES
       /etc/manpath.config
              man-db configuration file.

       /usr/share/man
              A global manual page hierarchy.

       /usr/share/man/index.(bt|db|dir|pag)
              A traditional global index database cache.

       /var/cache/man/index.(bt|db|dir|pag)
              An FHS compliant global index database cache.

这里简单说明一下manpath.config中的SECTION,它指定了优先输出的手册顺序。例如:

代码语言:javascript
复制
SECTION 1 n l 8 3 2 3posix 3pm 3perl 5 4 9 6 7

这里它最先显示的是1,即shell命令的帮助手册,其次是n,即内置命令的帮助手册。以此类推。当然,前提是这些手册都有。

我们也可以通过manpath命令查看man手册所在路径:

代码语言:javascript
复制
manpath
/usr/local/man:/usr/local/share/man:/usr/share/man:/usr/lib/jvm/java-8-oracle/man

实例

查找指定章节手册

一般的命令或者库函数的帮助手册都很好查看,但是如果你想查看write函数的帮助手册,使用下面的命令是看不到的:

代码语言:javascript
复制
man write

因为它既是一个用户命令也是一个系统调用名称,按照前面所设置的顺序,它会优先显示用户命令的帮助手册。因此,如果我们想直接查看作为系统调用(参考:系统调用和库函数的区别)的write的帮助手册,直接使用下面的方式即可:

代码语言:javascript
复制
man 2 write  #2表明从系统调用手册中查找
查找手册所在位置

如果仅仅是想查看手册在什么位置,可使用-w参数,例如:

代码语言:javascript
复制
man -w ls
/usr/share/man/man1/ls.1.gz
查找包含关键字的手册

有时候我们需要查看包含某些关键字的手册,但是又不知道具体是那个手册,这个时候可以使用下面的方式:

代码语言:javascript
复制
man -k touch  #查找包含touch关键字的手册(模糊匹配)
git-merge-tree (1)   - Show three-way merge without touching index
synaptics (4)        - touchpad input driver
syndaemon (1)        - a program that monitors keyboard activity and disables...
touch (1)            - change file timestamps
查看简短描述信息

如果只想简单知道该命令的作用,可使用-f参数,例如:

代码语言:javascript
复制
man -f ls
ls (1)               - list directory contents
查看所有手册

使用-a参数即可,它会展示所有相关手册

代码语言:javascript
复制
man -a open

总结

man命令是你最该学会使用的一个命令。借助man命令,可以帮助我们快速的学会使用其他命令或函数的使用。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程珠玑 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 基本介绍
  • 手册内容
  • 基本查看
  • 工作流程简述
  • 实例
    • 查找指定章节手册
      • 查找手册所在位置
        • 查找包含关键字的手册
          • 查看简短描述信息
            • 查看所有手册
            • 总结
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档