【Linux】在线求助命令--help,man page , info page

news2025/1/10 10:55:14

我们知道Linux有很多的命令,那LInux要不要背命令?

答案是背最常用的那些就行了

那有的时候我们想查询一些命令的详细用法该怎么办呢?

这里我给出3种方法

1.--help

--help的使用方法很简单啊

要查询的命令 --help

我们看个例子

这里我只截取了一小部分 

这里大概的讲解了一些date命令的使用方法

        基本上如果是命令,那么通过这个简单的【--help】就可以很快速地取得你所需要的选项、参数的说明,这很重要。我们说过,在Linux下面你需要学习完成任务的方式,不用硬背命令参数。不过常用的命令你还是得要记忆一下,而选项就通过【--help】来快速查询即可。

        同样的,通过【cal --help】你也可以取得相同的解释,相当好用。不过,如果你使用【bc-help】的话,虽然也有简单的解释,但是就没有类似scale的用法说明,同时也不会有+、-、
*、/、%等运算符的说明了。

        因此,虽然【--help】已经相当好用,不过,通常【--help】用在协助你查询“你曾经使用的命令所具备的选项与参数”而已,如果你要使用的是从来没有用过得命令,或是你要查询的根本就不是命令,而是文件的格式时,那就得要通过【man page】命令了。

2.man page

咦,【date -help】没有告诉你STRING是什么?

        嘿嘿,不要担心,除了【--help】之外,我们Linux上面的其他在线求助系统已经都帮你想好要怎么办了,所以你只要使用简单的方法去寻找一下说明的内容,马上就清清楚楚地知道该命令的用法了。这个man 是manual(操作说明)的简写。只要执行:【man date】马上就会有清楚的说明出现在你面前,如下所示:

我们可以按空格往下翻,按q退出 

我们现在处于的这个界面就是man page

我们仔细来看这个man page就会发现一些有趣的东西

首先,在上个表格的第一行,你可以看到的是:【DATE(1)】,DATE我们知道是命令的名称,那么(1)代表什么?

        它代表的是“一般用户可使用的命令”的意思。咦,还有这个用意,呵呵,没销在查询数据的后面的数字是有意义的,它可以帮助我们了解或是直接查询相关的数据。常见的几个数字的意义是这样的:

代号代表内容
1用户在shell环境中可以操作的命令或可执行文件
2系统内核可调用的函数和工具
3一些常用函数和函数库,大部分为c的函数库
4设备文件的说明,通常在/dev下的文件
5配置文件或者是某些文件的格式
6游戏
7惯例和协议,比如LInux文件系统,网络协议,ASCII代码等说明
8系统管理员可用的管理命令
9跟内核有关的文件

 上述的表格内容可以使用【man man】来更详细地取得说明。

        通过这张表格的说明,未来你如果使用man page 在查看某些数据时,就会知道该命令/文件所代表的基本意义是什么了。举例来说,如果你执行了 【 man nul】时,会出现的第一行是:【NULL(4)】,对照一下上面的数字意义,嘿嘿,原来 null 这个玩意儿竟然是一个设备文件,很容易了解了吧!

  上表中的1、5、8这三个号码特别重要,也请读者要将这三个数字所代表的意义背下来。

        再来,manpage的内容也分成好几个部分来加以介绍该命令。就是上面【man date】那个表格内,以NAME作为开始介绍,最后还有个SEEALSO来作为结束。

基本上man page大致分成下面这几个部分:

代号内容说明
NAME简短的命令、数据名称说明
SYNOPSIS简短的命令语法(syntax)简介
DESCRIPTION较为完整的说明,这部分最好仔细看看
OPTIONS针对SYNOPSIS 部分中,有列举的所有可用的选项说明
COMMANDS当这个程序(软件)在执行的时候,可以在此程序(软件)中执行的命令
FILES这个程序或数据所使用或参考或链接到的某些文件
SEE ALSO可以参考跟这个命令或数据有相关的其他说明
EXAMPLE一些可以参考的范例

 大概是这些,可能还有别的,我就不说了


2.1.man page常用按键

大致上了解了man page的内容后,那么在man page当中我还可以利用哪些按键来帮忙查看呢?首先,如果要向下翻页的话,可以按下键盘的空格键,也可以使用[Page Up]与[Page Down]来翻页。

        同时,如果你知道某些关键词的话,那么可以在任何时候输入【/word】,来主动查找关键词。例如在上面的查找当中,我输入了【/date】会变成怎样?



看到了吗,当你按下【/】之后,光标就会移动到屏幕的最下面一行,并等待你输入查找的字符串了。此时,输入date 后,man page 就会开始查找跟date 有关的字符串,并且移动到该区域。

很方便吧!最后,如果要离开 man page 时,直接按下 【q】就能够离开。我们将一些在man page 常用的按键给它整理整理:

按键进行工作
空格向下翻一页
【Page Down】向下翻一页
【Page Up】向上翻一页
【Home】去到第一页
【End】去到最后一页
/string向【下】查找string 这个字符串,如果要查找vbird 的话,就输入/vbird
?string向【上】查找string 这个字符串
n,N

利用 /或?来查找字符串时,可以用n来继续下一个查找(不论是/或?),可以利用N来进行【反向】查找。

        举例来说,我以/vbird 查找 vbird字符串,那么可以按下n继续往下查询,用N往上查询。若以?vbird向上查询vbird字符串,那我可以用n继续【向上】查询,用N反向查询

q结束这次的man page

要注意,上面的按键是在man page的界面当中才能使用的。

        比较有趣的是那个查找,我们可以往下或是往上查找某个字符串,例如要在 man page 内查找vbird 这个字符串,可以输入/vbird或是?vbird,只不过一个是往下,而一个是往上来查找的。而要重复查找某个字符串时,可以使用n或是N来操作即可,很方便吧!


        既然有man page,自然就是因为有一些文件数据,所以才能够让man page读出来。那么这学man page的数据存放在哪里呢?

        不同的发行版通常可能有点差异性,不过,通常是放存/usr/share/man这个目录里,然而,我们可以通过修改它的man page查找路径来改善这个目录的问题,修改/etc/man_db.conf(有的版本为man.conf 或 manpath.conf 或 man.config 等)即可。

2.2.查找特定命令/文件的man page说明文件

        在某些情况下,你可能知道要使用某些特定的命令或是修改某些特定的配置文件,但是偏偏忘记了该命令的完整名称,有些时候则是你只记得该命令的部分关键词。这个时候你要如何查出来你所想要知道的man page?

我们以下面的几个例子来说明man这个命令的作用。

你可否查出来,系统中还有哪些跟【man】这个命令有关的说明文件?
答:你可以使用下面的命令来查询一下:

使用一f这个选项就可以取得更多与man相关的信息,而上面这个结果当中也有提示(数字)的内容,举例来说,第三行的【man(7)】表示有个man(7)的说明文件存在,但是也有个man(1)存在。

那当我们执行【man man】的时候,到底是指向哪一个说明文件?

其实,你可以指定不同的文件,举例来说,上表当中的两个man你可以这样将它的文件显示出来:

[dmtsai@study ~]$ man 1 man      //这里是用man(1)的文件说明。
[dmtsai@study~]$ man 7 man      //这里是用man(7)的文件说明

        你可以自行将上面两个命令输入一次看看就知道,两个命令输出的结果是不同的。那个1、7就是分别取出在manpage里面关于1与7相关数据的文件。

        好了,那么万一我真的忘记了执行数字,只有输入【man man】时,那么取出的数据到底是1还是7?这个就跟查找的顺序有关了。

        查找的顺序是记录在/etc/man_db.conf这个配置文件当中,先查找到的哪个说明文件,就会先被显示出来。一般来说通常会先找到数字较小的那个,因为排序的关系,所以,man man会跟man 1 man结果相同。

        除此之外,我们还可以利用关键词找到更多的说明文件数据。什么是关键词?从上面的【man -f man】输出的结果中,我们知道其实输出的数据是:

  • 左边部分:命令(或文件)以及该命令所代表的意义(就是那个数字);
  • 右边部分:这个命令的简易说明,例如上述的【一macros to format man pages 】;

当使用【man -f 命令】时,man只会找数据中的左边那个命令(或文件)的完整名称,有一点不同都不行。但如果我想要找的是关键词呢?

        也就是说,我想要同时找上面说的两个地方的内容,只要该内容有关键词存在,不需要完全相同的命令(或文件)就能够找到时,该怎么办?请看下个范例。

例题
找出系统的说明文件中,只要有man这个关键词就将该说明列出来。

 非常多啊!

因为这个是利用关键词将说明文件里面只要含有man那个字眼的(不见得是完整字符串) 就将它取出来,很方便吧!(上面的结果有特殊字体的显示是为了方便读者查看,实际的输出结果并不会有特别的颜色显示。)

事实上,还有两个命令与man page有关,而这两个命令是man的简略写法,就是这两个:

[dmtsai@study ~]$ whatis  [命令或是文件] //<==相当于man -f[命令或是文件]
[dmtsai@study ~]$ apropos [命令或是文件]  //<==相当于man -k[命令或是文件]

而要注意的是,这两个特殊命令要能使用,必须要有建立whatis数据库才行,这个数据库的建立
需要以root的身份执行如下的命令.

[root@study -]4 mandb
#旧版的Linux这个命令是使用makewhatis,这一版开使用mandb了

3. info page

        在所有的UNIX-like系统当中,都可以利用man 来查询命令或是相关文件。但是,在Linux里
面则又额外提供了一种在线求助的方法,那就是利用info这个好用的工具。

        基本上,info与man的用途其实差不多,都是用来查询命令的用法或是文件的格式。但是与man page —口气输出一堆信息不同的是,info page 则是将文件数据拆成一个一个的段落,每个段落用自己的页面来编写,并且在各个页面中还有类似网页的超链接来跳到各不同的页面中,每个独立的页面也被称为一个节点(node)。所以,你可以将info page想成是命令行模式的网页显示数据。

        不过你要查询的目标数据的说明文件必须要以 info的格式来写成才能够使用info的特殊功能(例如超链接),而这个支持 info 命令的文件默认是放置在/usr/share/info/这个目录当中。

        举例来说,info这个命令的说明文件有写成info格式,所以,你使用【info info】可以得到如下的画面:

我们看到Menu了吧,它下面那些全是超链接,指向那些超链接我们就可以跳转到对应页面,我们来试试看

我们可以直接按Tab键来到第一个超链接(自己移动光标来到这里也可以)

这个时候按下Enter

怎么样?是不是很方便

更重要的是我们可以通过按N,P,U去到下一个,上一个,上一层的结点,非常方便

 链接之间还可以具有类似超链接的快速按钮,可以通过【Tab】键在各个超链接间移动,也可以使用U、P、N来在各个层级与相关链接中显示,非常不错。

至于在info page当中可以使用的按键,可以看下面的表格,事实上,你也可以在info page中按下h。

按键
空格键向下翻一页
[Page Down]向下翻一页
[Page Up]向上翻一页
[Tab]在节点之间移动,有节点的地方,通常会以*显示
[Enter]当光标在节点上面时,按下Enter可以进入该节点
b移动光标到该info界面当中的第一处
e移动光标到该 info界面当中的最后一个节点处
n前往下一个节点处
p前往上一个节点处
u向上移动一层
s(/)在info page当中进行查找
h,?显示帮助选项
q结束这次的info page

info page 是只有Linux上面才有的产物,而且易读性增强很多,不过查询的命令说明要具有info page功能的话,得用info page 的格式来写成在线求助文件才行。

CentOS7将 info page的文件放置到/usr/share/info/目录中,至于以非info page 格式写成的说明文件(就是man page),虽然也能够使用info 来显示,不过其结果就会跟man相同。

举例来说,你可以执行【info man】就知道结果了。

我们再看一个例子

这里是ls的相关介绍,我们按下Tab键

再按Tab键

 进去看看

我们可以通过按N,P,U去到下一个,上一个,上一层的结点,非常方便

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1905368.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DoIP-1 简介

1. 概述 DoIP-Diagnostic Over Internet Protocol &#xff0c;基于TCPIP协议族的诊断传输协议 DoIP国际标准定义为ISO 13400&#xff0c;总共由五部分组成&#xff1a;  ISO13400-1DoIP的综述  ISO13400-2DoIP的传输层和网络层服务&#xff08;主体部分&#xff09;  I…

vue-element-admin集成方案如何运行以及代码解读

文章目录 1.vue-admin-admin介绍2.运行方法3.代码解读3.1基础外层文件解读&#xff0c;以及eslint关闭&#xff08;如下图&#xff09;3.2内层src文件分析3.2.1 login流程解析 1.vue-admin-admin介绍 1.1 是一个后台前端解决方案(vueelementui)&#xff0c;内置i18国际化解决方…

Javascript常见数据结构和设计模式

在JavaScript中&#xff0c;常见的数据结构包括两大类&#xff1a;原始数据类型&#xff08;Primitive Types&#xff09;和对象类型&#xff08;Object Types&#xff09;。对象类型又可以进一步细分为多种内置对象、数组、函数等。下面是一些JavaScript中常见的数据结构&…

【PWN · ret2syscall | GoPwn】[2024CISCN · 华中赛区]go_note

一道GoPwn&#xff0c;此外便是ret2syscall的利用。然而过程有不小的曲折&#xff0c;参考 返璞归真 师傅的wp&#xff0c;堪堪完成了复现。复现过程中&#xff0c;师傅也灰常热情回答我菜菜的疑问&#xff0c;感谢&#xff01;2024全国大学生信息安全竞赛&#xff08;ciscn&am…

落日余晖映晚霞

落日余晖映晚霞&#xff0c;立于海滨&#xff0c;望夕阳余晖洒于波光粼粼之上&#xff0c;金光跳跃&#xff0c;若繁星闪烁&#xff0c;耀人心目。 海风轻拂&#xff0c;心境宁静&#xff0c;凡尘俗务皆于此刹那消散&#xff0c;思绪万干&#xff0c;或忆往昔点滴&#xff0c;或…

7.7 洛谷

约瑟夫环 P1145 约瑟夫 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) index(indexm-1)%num;if(index>k && index<2*k){a[index]0;num--;}ac代码 #include<bits/stdc.h> using namespace std; typedef long long ll;#define IOS ios::sync_with_stdio(0…

【MySQL】Mysql数据库导入导出sql文件、备份数据库、迁移数据库

本文摘要&#xff1a;本文提出了xxx的实用开发小技巧。 &#x1f60e; 作者介绍&#xff1a;我是程序员洲洲&#xff0c;一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主。 &#x1f913; 同时欢迎大家关注其他专栏&…

UE C++ 多镜头设置缩放 平移

一.整体思路 首先需要在 想要控制的躯体Pawn上&#xff0c;生成不同相机对应的SpringArm组件。其次是在Controller上&#xff0c;拿到这个Pawn&#xff0c;并在其中设置输入响应&#xff0c;并定义响应事件。响应事件里有指向Pawn的指针&#xff0c;并把Pawn的缩放平移功能进行…

秋招突击——7/4——复习{}——新作{最长公共子序列、编辑距离、买股票最佳时机、跳跃游戏}

文章目录 引言复习新作1143-最长公共子序列个人实现 参考实现编辑距离个人实现参考实现 贪心——买股票的最佳时机个人实现参考实现 贪心——55-跳跃游戏个人实现参考做法 总结 引言 昨天主要是面试&#xff0c;然后剩下的时间都是用来对面试中不会的东西进行查漏补缺&#xff…

通过大众点评进行连锁店铺跟踪(均价、门店数等)、关键词店铺挖掘的思路方法

在做一些城市分析、学术研究分析、商业选址、商业布局分析等数据分析挖掘时&#xff0c;大众点评的数据参考价值非常大&#xff0c;这里提供一种通过大众点评进行连锁店铺跟踪&#xff08;均价、门店数等&#xff09;、关键词店铺挖掘的思路方法。 通过大众点评提供搜索页面&a…

【Qt】Qt概述

目录 一. 什么是Qt 二. Qt的优势 三. Qt的应用场景 四. Qt行业发展方向 一. 什么是Qt Qt是一个跨平台的C图形用户界面应用程序框架&#xff0c;为应用程序开发者提供了建立艺术级图形界面所需的所有功能。 Qt是完全面向对象的&#xff0c;很容易扩展&#xff0c;同时Qt为开发…

MuLan:模仿人类画家的多对象图像生成

在图像生成领域&#xff0c;处理包含多个对象及其空间关系、相对大小、重叠和属性绑定的复杂提示时&#xff0c;现有的文本到图像模型仍面临挑战&#xff1a;当文本提示中包含多个对象&#xff0c;并且这些对象之间存在特定的空间关系时&#xff0c;现有模型往往难以准确地捕捉…

LlamaGen:自回归模型的图像生成革命

LlamaGen&#xff1a;自回归模型的图像生成革命 1. 突破性进展&#xff1a;LlamaGen超越传统扩散模型 在图像生成领域&#xff0c;LlamaGen团队带来了颠覆性创新。由香港大学和字节跳动的研究人员共同开发的这一模型&#xff0c;不仅在技术上超越了传统的扩散模型&#xff0c;…

MySQL8.0在windows下的下载安装及详细使用

下载mysql8.0二进制包 下载地址&#xff1a;MySQL :: Download MySQL Community Server 编辑my.ini配置文件 解压二进制包&#xff0c;新建/编辑my.ini配置文件(如果不存在则新建) [client] #客户端设置&#xff0c;即客户端默认的连接参数 # 设置mysql客户端连接服务端时…

element-plus 的form表单组件之el-radio(单选按钮组件)

单选按钮组件适用于同一组类型的选项只能互斥选择的场景&#xff0c;就是支持单选。单选组件包含以下3个组件 组件名作用el-radio-group单选组组件&#xff0c;子元素可以是el-radio或el-radio-button&#xff0c;v-mode绑定单选组的响应式属性el-radio单选组件&#xff0c;la…

区块链论文速读A会-ISSTA 2023(2/2)如何检测DeFi协议中的价格操纵漏洞

Conference&#xff1a;ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA) CCF level&#xff1a;CCF A Categories&#xff1a;Software Engineering/System Software/Programming Languages Year&#xff1a;2023 第1~5篇区块链文章 请点击此…

linux centos7.9 安装mysql5.7;root设置客户端登录、配置并发、表名大小写敏感等

查看centos版本 cat /etc/centos-releasecentos版本为7.9 查看是否已安装mariadb,安装了需要先删除 1.查看是否安装了mariadb和mysql&#xff0c;安装了需要先删除 mariadb是mysql的一个分支&#xff0c;但要安装mysql需要删除它 执行rpm -qa|grep mariadb,查看mariadb情况…

推荐几款漂亮的代码字体

Visual Studio Code 中字体看时间长了就会产生幻觉&#xff0c;于是今天看到有人推荐漂亮的代码字体&#xff0c;于是自己也推荐几款&#xff1a; 需要注意的是&#xff0c;大部分网上的教程都建议使用混合字体&#xff0c;即使用微软雅黑与某种等宽字体混合。但事实上&#x…

操作系统中的权限说明

什么是权限 权限在操作系统中是一个重要的功能&#xff0c;它允许你控制谁可以读取、写入或执行某个文件。不同的操作系统和文件系统可能有不同的权限模型&#xff0c;但在类Unix系统&#xff08;如Linux和macOS&#xff09;中&#xff0c;文件权限通常由三部分组成&#xff1a…

Python3极简教程(一小时学完)中

异常 在这个实验我们学习 Python 的异常以及如何在你的代码中处理它们。 知识点 NameErrorTypeError异常处理&#xff08;try..except&#xff09;异常抛出&#xff08;raise&#xff09;finally 子句 异常 在程序执行过程中发生的任何错误都是异常。每个异常显示一些相关…