Linux学习--3.命令及查看命令帮助,


命令及查看命令的详细使用

前言:

  通过这篇图文,读者可以了解 Linux 里命令的外表和本质,及如何利用 linux 自带的帮助说明来自学一个自己没用过的命令。

  自学要求:有点英语基础最好,这个等下看帮助文档的时候就知道了,能看懂大多数英语单词自学就没问题

正文:

  首先,Linux 里的命令分为内置的Shell命令外部命令,那这两种命令有区别么,本质是什么?

  下面是我的个人理解:其实你可以把他们简单理解为系统预装的工具软件和自己后来装的工具软件,深入到本质讲的话,一个具体的命令就是一段编程语言编写的程序以二进制的方式保存的可执行文件,shell是c语言编写的,外部命令那可能是各种编程语言写的。所以说 shell 命令是肯定有的,是系统自带的;而外部命令可能默认没有,所以要用这个命令得先安装,比如我的第一篇 linux 笔记里的 tree 命令默认就是没有,得自己装 tree 这个软件。其实安装系统的时候就有自定义安装哪些软件的界面,也就是在装个人工具包。这都是我个人的奇怪理解,各位视个人理解程度看吧,有不对望提出。

基础知识

  一步步来,上面讲了我理解的 linux 里命令的本质,下面说下他的外表,也就是我们常看到它的样子

  一般命令的格式:command   【option】   arguments ...

  很简单举个例子像下面这个命令

  rm -rf  test.txt

  rm:就是 command,命令

  -rf:就是 option,可选项

  test.txt:就是argument,参数

  这里就简单了解下就好,实际上后面看帮助文档就明白一个命令的外表能有多花哨了,所以这个没必要认真记,看看过好了,就是参数的话后面可以跟好多个,也就是 test.txt 后面还能跟其他文件,rm 可以一次性删一堆文件,就这些

查看命令类型

  本质和外表都讲完了,然后怎么知道一个命令(内在)到底是那个类型呢,可以用 type 命令后面跟要查的命令,这个命令有三种返回结果。

  • 情况一如下所示whatis 命令的作用查看帮助手册页和命令描述,什么意思呢既然能查看命令描述,那就先看下它怎么用呗,键入下面的命令
    whatis whatis

    看下他执行的结果,怎么说的,显示手册页码描述,手册页码呢就是(1),描述呢就是 - display ... 这段,至于页码等下马上在 man 命令里用到了         

    • 好了 whatis 命令知道啥意思了可以查 cd 命令了
      whatis cd

      看下他的执行结果,怎么有两个?一样么?诶看下描述,第一个 cd 说的是 bash 内置的命令,详见 bash(1),那下面这个 cd 呢,说的是切换工作路径,好了就是我们要找的 cd 帮助     

    • 那下面可以用 man 命令了,它的作用是查看帮助文档,用法是 man + 手册页码 + 要查看的命令,如下所示,所以页码作用就是区分相同命令名,但是是不同命令的手册位置
      man 1p cd

      看下执行结果,跳出来一个新的窗口界面,底下有提示按 h 获取帮助按 q 退出,其实这就是帮助文档了,怎么看文档 pageup 和 pagedn 可以上下翻页,按 e 和 y 可以下上逐行翻看,按 d 和 u 可以半页的翻看,不多说了这些会一个就行,具体操作按 h 可以看到。比较常用的我说下如查找某个关键字可以键入 / 要找的内容 ,按回车关键字就都会标记出来,还有上下左右键可以看文档这两个操作就够了。感觉这看文档操作都能写篇长文了,就先讲这些。先关注现在要看的 cd 帮助文档

    • PROLOG:这个不重要,可忽略 
    • NAME命令的名字 cd —— 它的功能描述,切换工作路径
    • SYNOPSIS用法,也即命令格式,cd 有两种用法,第一种是 cd +【可选项】 +【目录】,第二种是 cd -
    • DESCRIPTION:对 cd 命令详细用法描述,这里有细节,看这个对 cd 的使用有很大的提升,当然它的内容不少,所以视情况一般关键字搜索找自己需要看的细节效率高点,全看没必要
    • OPTIONS:对 cd 命令后面跟的可选项的作用描述,如 cd -L 是后面跟 .. 和链接文件的话先处理 .. 再处理链接文件, -P 选项相反,这什么意思我也不太清楚,但是上面DESCRIPTION描述里应该有解释,这个我就不多说了,因为这也不常用(当然这是对于我来说,我还没怎么碰到这个选项用法)
    • OPERANDS:这个是讲 cd 后面跟的操作数(参数)可以有哪些,看内容 cd 后面可以有目录和 - 两个选项,目录这个我们早会用了,就是要切到的路径,那 cd - 又有什么作用呢,看内容说的是跟 cd "$OLDPWD" && pwd ,其实就是上次的路径跟当前路径可以来回切换,这个还挺常用,长得也很特殊挺好记的,记下吧
    • 后面还有很多,就重要的我说下,STDIN,STDOUT,EXAMPLES,这三个内容可以看下,分别是标准输入输出和 cd 用法的举例使用,不过输入输出跟管道重定向有关,现在没必要,EXAMPLES可以先看起来,不过 cd 没有例子,可能太简单了,可以换其他命令试下,多的不讲了。我感觉自己都要把自己陷进去了,不过重要的都已经说了,第一种方法就讲到这了。
  • 第二种方法:在查看帮助的命令后面加 --help 或 -h 选项,这个方法优点是帮助说明显示简洁明了(就是 man 文档里跟命令不搭嘎还有太过于细致的内容删减了),所以上手快,也不需要掌握浏览文档要会的按键(当然这个不是关键)主要还是省事,缺点就是支持的命令没有 man 多,还有命令帮助文档一个屏幕没显示出来的话就很麻烦。所以他比较适合可选项不多的简单命令。

    • 那下面来举个例子看下,cd 不能举了,刚看了说明没有 -h 或 --help选项,所以看下 cat 命令
      cat --help

      下面是执行结果,大多数内容跟上面的文档差不多,所以我简单分析下:
      http://www.gnu.org/software/coreutils/manual/ ,能解决99%的问题。GNU 是个倡导开源软件的组织,就是提供免费软件的团队。

         对了在查看网页版文档的时候,如果是谷歌浏览器的话,可以用 CTRL + F 键找关键字,这样会省事很多,毕竟命令一堆滚动条拉到什么时候,别的没了。

         在查外部命令的时候那就还是 man 命令吧,如果没看懂,可以找下 man 帮助文档的底下说不定会有一个帮助网页,你可以看我上面那张图最底下是不是写着 GNU coreutils online help 后面跟着一个网址。对我就是这么发现 GNU 官网帮助的。

      总结    

        命令的外表与本质-->用 type 判断命令本质--> whatis 配合 man 看命令外在形式-->实现自学

        本质三种:shell 命令,外部命令,其他命令的别名

        外表多样,一般样子长这样:命令+可选项+一个参数或多个

        重点掌握了 type,whatis,man三个命令的用法,了解 -h 和 --help 可选项的用法。哦对了 -h 选项有时候不一定是列出帮助文档,如 poweroff -h 里的 -h 是 halt(挂起的意思),电脑就挂机了,所以能用 --help 长选项别用 -h 短选项,指不定发生奇怪的事情,然后还不知道发生了什么。网页帮助文档的话是最后一种手段,而且尽量选择看官方的帮助。

      互动环节

        大家有没有比较好的学习 Linux 的资源和网站可以分享下,我现在苦学中,需要慢慢改进我的奇怪理解。

        

        

相关内容

    暂无相关文章