Linux中man手册的安装以及使用详解

2023-11-08

linux中man手册的安装以及使用详解

man手册是什么

man是manual的简称,中文称之为手册。
man手册是linux系统提供的一种帮助手册。

man手册是干嘛的

当需要查看某个命令的具体参数和使用方法时,不必网上搜索,只需要使用man命令即可查询出所需使用命令的具体参数以及使用方法。

man手册如何安装

首先输入man回车,如出现下列错误请移步到解决方案
在这里插入图片描述
如出现以下所示
在这里插入图片描述
方可继续进行下一步

在命令行中输入以下命令来进行man手册的安装

apt-get install man-db

在这里插入图片描述
输入y进行安装,静静等待安装完成(别问我静静是谁,我也不知道)

接下来查看是否装完成
输入命令

man echo 
//此处我查询的是echo命令,作为测试,可以用不同的命令进行。

在这里插入图片描述
如图所示,查询到echo命令的具体参数,即为安装成功。
man手册的安装到此结束。

man手册如何使用

举例讲解

首先我们敲击命令

man mkdir 
man 命令的名称

来查看一下关于mkdir命令的参数以及使用方法

MKDIR(1)                                                                              User Commands                                                                             MKDIR(1)

NAME
       mkdir - make directories

SYNOPSIS
       mkdir [OPTION]... DIRECTORY...

DESCRIPTION
       Create the DIRECTORY(ies), if they do not already exist.

       Mandatory arguments to long options are mandatory for short options too.

       -m, --mode=MODE
              set file mode (as in chmod), not a=rwx - umask

       -p, --parents
              no error if existing, make parent directories as needed

       -v, --verbose
              print a message for each created directory

       -Z     set SELinux security context of each created directory to the default type

       --context[=CTX]
              like -Z, or if CTX is specified then set the SELinux or SMACK security context to CTX

       --help display this help and exit

       --version
              output version information and exit

AUTHOR
       Written by David MacKenzie.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report mkdir translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright (C) 2018 Free Software Foundation, Inc.  License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
       mkdir(2)

       Full documentation at: <https://www.gnu.org/software/coreutils/mkdir>
       or available locally via: info '(coreutils) mkdir invocation'

我们来看一下man手册的目录结构。

名称 含义
NAME 名称
SYNOPSIS 命令语法(又称摘要)
DESCRIPTION 命令完整描述
AUTHOR 作者
REPORTING BUGS 报告的错误
COPYRIGHT 版权
SEE ALSO 查看相关信息
我们平时查询命令的时候,大多数关注的都是第二项和第三项。

进行具体分析

section

首先我们可以看到左上角有大写的MKDIR(1),其中的(1)是什么意思呢?又从何而来?
因为在man手册中,将各类命令分为9大section。

section序号 section的含义
1 可执行文件或者shell命令
2 系统调用(内核提供的函数)
3 库函数
4 特别的文件(通常在/dev)
5 文件格式,如/etc/passwd
6 游戏
7 杂项(包括宏包)
8 系统管理员命令(通常给root用户使用)
9 内核例程(非标准例程)
如需查看section的具体内容,可以使用命令
man man

进行查看。
那么这一部分对我们来说有什么用呢?
上图所示,是在可执行文件这个板块的,此处需要知道,如果没有指定man在哪个板块中寻找,将会按照默认的顺序查找这些板块中的命令,只返回含有该命令的第一个文档,如果指定板块,则只会在指定板块中寻找该命令,所以有时候直接man而不指定板块则可能不会找到自己想要的文档。
例如

man 5 passwd

在这里插入图片描述
我们指定板块序号为5,所以会在第五板块中寻找符合要求的文档。

分析具体结构

依旧以mkdir为例

1、NAME部分(名称)

mkdir是命令的name
含义:make directories,中文意思为:创建目录

2、SYNOPSIS部分(摘要,命令语法)
mkdir [OPTION]... DIRECTORY...

“OPTIONS”左右有”[“和”]”,表示这些参数并不必须,但是可以使用。对应的DIRECTORY两边没有”[]”,就是必须要加的参数了。
另外,它们后面都有”…” ,表示这些参数可以重复使用多次。

3、DESCRIPTION部分(描述)

Create the DIRECTORY(ies), if they do not already exist.
中文意思为:如果目录不存在,则创建目录。

文档中有几个具体的运行命令,此处不再一一列举。

4、AUTHOR

命令的作者

5、REPORTING BUGS(已报告的错误)
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report mkdir translation bugs to <https://translationproject.org/team/>

分别是在线帮助以及报告错误的网址

6、COPYRIGHT(版权)
  Copyright (C) 2018 Free Software Foundation, Inc.  License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent permitted by law.
7、SEE ALSO(查看相关信息的位置)
       mkdir(2)

       Full documentation at: <https://www.gnu.org/software/coreutils/mkdir>
       or available locally via: info '(coreutils) mkdir invocation'

大意为在2板块中也有相关的文档。

man手册页的基本操作

此处仅仅介绍了两个命令,如需使用更多命令可以使用命令

man man

来查看更多man命令的参数

1.查找信息

如果你已经进入文档页面,那么可以使用“/”键进行正则表达式的搜索
如果你不知道索要打开的文档的名称可以使用命令

man -k
例如 man -k mkdir

在这里插入图片描述

2.退出man手册

举例结束了,该退下了,那么如何退出man手册呢?
非常简单,只需要轻轻按下键盘上的“q”即可退出man。
至此,man手册功成身退
如有错误,还请各位大佬指点一二,欢迎来共同探讨哦

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux中man手册的安装以及使用详解 的相关文章

  • 在 Ubuntu 16.04 上编译 PCL 1.7,CMake 生成的 Makefile 中出现错误

    我正在尝试让 PCL 1 7 点云库 而不是其他 pcl 在 Ubuntu 16 04 上运行 我最终希望用于 C 的东西 但现在我只是想让这些例子工作 我使用的是 Ubuntu GNU 5 3 1 附带的默认编译器和 Cmake 版本 3
  • 在 Linux 控制台中返回一行?

    我知道我可以返回该行并用以下内容覆盖其内容 r 现在我怎样才能进入上一行来改变它呢 或者有没有办法打印到控制台窗口中的特定光标位置 我的目标是使用 PHP 创建一些自刷新的多行控制台应用程序 Use ANSI 转义码 http en wik
  • 可以作为命令行参数传递多少数据?

    在 Linux 下生成进程时可以发送多少字节作为命令行参数 gahooa 推荐了一篇好文章http www in ulm de mascheck various argmax http www in ulm de mascheck vari
  • 使用运算符 j 操作 zsh 数组

    以下代码摘自here http eseth org 2010 git in zsh html function vi git st local ahead behind remote local a gitstatus Are we on
  • 比较linux中的两个未排序列表,列出第二个文件中的唯一项

    我有 2 个包含号码列表 电话号码 的文件 我正在寻找一种列出第二个文件中第一个文件中不存在的数字的方法 我尝试过各种方法 comm getting some weird sorting errors fgrep v x f second
  • dpkg 错误:pycompile:未找到

    sudo apt get remove purge mysql server mysql client mysql common 当我尝试使用上述命令删除 mysql 时 出现以下错误 Reading package lists Done
  • OpenSSL 未签名证书静默

    遇到了麻烦 还有其他一些相关的帖子 但没有那么具体 我正在尝试为开发机器默默地生成证书 这些是我最初运行的命令 但被要求输入密码 openssl genrsa des3 out server key 1024 openssl req new
  • PHP exec rm -Rf 不适用于子目录

    我试图删除特定文件夹中的所有内容 但它似乎不会影响子文件夹 但它应该 因为 bash 命令是从控制台执行的 system rm Rf some dir 该命令中不需要星号 如果要与文件一起删除目录 请同时删除斜杠 留下斜杠将删除文件 但保留
  • 如何在linux中使用iptables将http和https流量转发到透明代理[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题似乎不是关于主要由程序员使用的特定编程问题 软件算法或软件工具 help on topic 如果您认为该问题与主题相关另一个 St
  • 在 bash 中,如何除以两个变量并输出四舍五入到小数点后 5 位的答案? [复制]

    这个问题在这里已经有答案了 我将两个变量作为输入 将它们相除后 我希望将输出四舍五入到小数点后 5 位 我已经尝试过这种方法 gt sum 12 n 7 output scale 5 sum n bc echo output 我的代码没有显
  • 在 C# 中编写批处理脚本的好方法是什么?

    我想用 C 编写简单的脚本 我通常会使用 bat 或 4NT btm 文件 复制文件 解析文本 询问用户输入等等 相当简单 但在批处理文件中正确执行这些操作确实很困难 例如没有例外 我熟悉像 AxScript 这样的命令行 脚本 包装器 这
  • BASH 中的空函数

    我正在使用 FPM 工具创建 deb 包 此工具在从支持的文件中删除包之前 之后创建 不幸的是FPM生成的bash脚本包含这样的函数 dummy 该脚本退出时出现错误 语法错误 意外 BASH 不允许空函数吗 哪个版本的 bash linu
  • 亚马逊 Linux - 安装 openjdk-debuginfo?

    我试图使用jstack在 ec2 实例上amazon linux 所以我安装了openjdk devel包裹 sudo yum install java 1 7 0 openjdk devel x86 64 但是 jstack 引发了异常j
  • 查找并删除超过 x 天的文件或文件夹

    我想删除超过 7 天的文件和文件夹 所以我尝试了 17 07 14 email protected cdn cgi l email protection find tmp mindepth 1 maxdepth 1 ctime 7 exec
  • 将变量插入 sh 脚本命令[重复]

    这个问题在这里已经有答案了 bin sh f set proj dir OutputDir for projname in lib proj1 proj2 do mv scripts projname BYTECODE proj dir s
  • 从哪里获取 iostream.h

    我正在尝试在 Linux 中做一些事情 但它抱怨找不到 iostream h 我需要安装什么才能获取此文件 这个标准头的正确名称是iostream没有扩展名 如果您的编译器仍然找不到它 请尝试以下操作 find usr include na
  • 从命令行更改 konsole 选项卡标题并使其持久?

    如何更改 konsole 选项卡标题 默认情况下 它设置为 u n 所以它总是自动改变 我可以这样设置 qdbus org kde konsole KONSOLE DBUS SESSION setTitle 1 My Title 但是一旦您
  • 如何指定配置脚本的包含目录

    我的工作场所有一个 Linux 系统 其中包含相当旧的软件包 并且没有 root 访问权限 我正在从源代码编译我需要的包 prefix somewhere in homedir 我的问题是我只是不知道如何说服配置在特定目录中查找头文件 源码
  • 如何通过不同的接口路由 TCP/IP 响应?

    我有两台机器 每台机器都有两个有效的网络接口 一个以太网接口eth0和 tun tap 接口gr0 目标是使用接口在机器 A 上启动 TCP 连接gr0但然后让机器 B 的响应 ACK 等 通过以太网接口返回 eth0 因此 机器 A 发出
  • Bash 的源命令无法处理从互联网上卷曲的文件

    我正在尝试使用curl从互联网获取脚本文件 如下所示 source lt curl url echo done 我看到的是 完成 得到了回响before卷曲甚至开始下载文件 这是实际的命令和输出 bash 3 2 source lt cur

随机推荐