命令的查看帮助 和 命令行的历史

命令的查看 分内部命令 和外部命令 


查看外部命令 可用 man command–help info 

查看内部命令 可用 help command


man 帮助是 使用最频繁的 命令查看 而 man 又有很多选项 如下


   man – format and display the on-line manual pages


SYNOPSIS

       man  [-acdDfFhkKtwW]  [–path] [-m system] [-p string] [-C config_file]

       [-M pathlist] [-P pager] [-B browser] [-H htmlpager] [-S  section_list]

       [section] name …


DESCRIPTION

       man formats and displays the on-line manual pages.  If you specify sec-

       tion, man only looks in that section of the manual.  name  is  normally

       the  name of the manual page, which is typically the name of a command,

       function, or file.  However, if name contains  a  slash  (/)  then  man

       interprets  it  as a file specification, so that you can do man ./foo.5

       or even man /cd/foo/bar.1.gz.


       See below for a description of where man  looks  for  the  manual  page

       files.


MANUAL SECTIONS

       The standard sections of the manual include:

:

       由于 选项过多 而我们平时 用到的 并不是全部 所以 在此简要 说明 几个重要选项如下


       -K 搜索所有字符串 页面


       -A 列出所有帮助


       -C  config_file

              Specify  the configuration file to use; the default is @man_con-

              fig_file@.  (See man.conf(5).)


       -M  path

              Specify the list of directories to search for man pages.   Sepa-

              rate  the directories with colons.  An empty list is the same as

              not specifying -M at all.  See SEARCH PATH FOR MANUAL PAGES.


       -P  pager

              Specify which pager to use.  This option overrides the  MANPAGER

              environment  variable,  which  in turn overrides the PAGER vari-

              able.  By default, man uses @pager@.


       -B     Specify which browser to use on HTML files.  This  option  over-

              rides  the  BROWSER  environment  variable. By default, man uses

              @browser@,


       -H     Specify a command that renders HTML files as text.  This  option

              overrides  the  HTMLPAGER  environment variable. By default, man

              uses @htmlpager@,




     在搜索出的 man命令页面解释中 我们可以使用一些快捷键例如


man命令的操作方法:使用less命令实现 Space, ^V, ^f, ^F: 向文件尾翻屏

 b, ^B: 向文件首部翻屏

 d, ^D: 向文件尾部翻半屏

 u, ^U: 向文件首部翻半屏 

RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行 

y or ^Y or ^P or k or ^K:向文件首部翻一行 

q: 退出 #:跳转至第#行 

1G: 回到文件首部 

G:翻至文件尾部

也可以

     /KEYWORD: 以KEYWORD指定的字符串为关键字,从当前位置向文件 尾部搜索;

不区分字符大小写; n: 下一个 N:上一个 ?

?KEYWORD: 以KEYWORD指定的字符串为关键字,从当前位置向文件 首部搜索;

不区分字符大小写; n: 跟搜索命令同方向,下一个 N:跟搜索命令反方向,上一个

友情提示 有时 info比man更详细 当然 视情况而定


    man常用于命令参考 ,GNU工具info适合通用文档参考。 ? 

    没有参数,列出所有的页面 ?

    info 页面的结构就像一个网站 ? 每一页分为“节点” ? 链接节点之前 * ?info [ 命令 ]



下面 简要 介绍一下 history 的 用法 以及 命令历史行的 调用


      命令行扩展:$( ) 或 “ ? 把一个命令的输出打印给另一个命令的参数 $ echo "This system's name is $(hostname) " This system's name is server1.example.com $echo "i am `whoami` " i am root ? 括号扩展:{ } ? 打印重复字符串的简化形式 $ echo file{1,3,5} file1 file3 file5 $ rm -f file{1,3,5}


     保存你输入的命令历史。可以用它来重复执行命令 ? 登录shell时,会读取命令历史文件中记录下的命令 ~/.bash_history ? 登录进shell后新执行的命令只会记录在缓存中;这些命 令会用户退出时“追加”至命令历史文件中


重复前一个命令,有4种方法:

      重复前一个命令使用上方向键,并回车执行。 

按 !! 并回车执行。 输入 !-1 并回车执行。 

按 Ctrl+p 并回车执行。 ?!字符串:重复前一个以“字符串”开头的命令 ?

!num:按照history命令输出中的序号重复对应命令 ?!?字符串:重复前一个包含abc的命令 ?

!-n :重复n个命令之前的那个命令


      使用up(向上)和down(向下)键来上下浏览从前输入 的命令 ? 

键入ctrl-r来在命令历史中搜索命令 ? (reverse-i-search)`’: ? 要重新调用前一个命令中最后一个参数: ? 

!$  表示 ? Esc, .(点击Esc键后松开,然后点击 . 键) ? Alt+ .(按住Alt键的同时点击 . 键)


以及调用历史参数 

如下 

  #cmd !^ : 利用上一个命令的第一个参数做cmd的参数 ?

  #cmd !$ : 利用上一个命令的最后一个参数做cmd的参数 ?

  #cmd !* : 利用上一个命令的全部参数做cmd的参数 ?

  #cmd !:n  : 利用上一个命令的第n个参数做cmd的参数


   !string:^ 从命令历史中搜索以 string 开头的命令,并获取 它的第一个参数 ?

   !string:$ 从命令历史中搜索以 string 开头的命令,并获取它 的最后一个参数 ?

   !string:n 从命令历史中搜索以 string 开头的命令,并获取 它的第n个参数 ?

   !string:* 从命令历史中搜索以 string 开头的命令,并获取 它的所有参数


   history 的 一些 命令选项 

history [-c] [-d offset] [n] ?history -anrw [filename] ?history -ps arg [arg…] 

-c: 清空命令历史 

-d: 删除历史中指定的命令; #: 显示最近的#条历史 

-a: 追加本次会话新执行的命令历史列表至历史文件 

-n: 读历史文件中未读过的行到历史列表 

-r: 读历史文件附加到历史列表 

-w: 保存历史列表到指定的历史文件 

-p: 展开历史参数成多个行,但不存在历史列表中 

-s: 展开历史参数成一行,附加在历史列表后

 


和命令历史相关的环境变量


 HISTSIZE:命令历史记录的条数; ? 

HISTFILE:指定历史文件,默认为~/.bash_history; ? 

HISTFILESIZE:命令历史文件记录历史的条数; ? 

HISTTIMEFORMAT=“%F %T“   显示时间 ? 

HISTIGNORE=“str1:str2:… “ 忽略string1,string2历史 ? 控制命令历史的记录方式: 环境变量:

HISTCONTROL ignoredups:忽略重复的命令;连续且相同方为“重复” ignorespace:忽略所有以空白开头的命令 ignoreboth:ignoredups, ignorespace erasedups:删除重复命令 ? export 变量名="值“ ? 存放在 /etc/profile 或 ~/.bash_profile



   友情附加 一些关于 bash 的 快捷键


Ctrl+l  清屏,相当于clear命令 ?

Ctrl+c 取消命令的执行 ?

Ctrl-a 会移动到命令行的最前面 ?

Ctrl-e 会移动到命令行的最后面 ?

Ctrl-u 会删除到行首 ?

Ctrl-k 会删除到行尾 ?

arrow   ctrl-b  ctrl-f会向左或向右移动一个字符 ?

Esc-b 左移一个单词 ?

Esc-f 右移一个单词

原创文章,作者:a1215276209,如若转载,请注明出处:http://www.178linux.com/33232

(0)
a1215276209a1215276209
上一篇 2016-08-12 09:02
下一篇 2016-08-12 09:02

相关推荐

  • ​第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@localhost ~]# grep  -E "^[[:space:]]+" /boot/grub/grub.conf  root (hd0,0) kernel&nbs…

    Linux干货 2017-02-05
  • 计算机网络基础知识与Linux网络配置

    本文主要内容是: 1.讲述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 2、IP地址的分类有哪些?子网掩码的表示形式及其作用 3、计算机网络的分成模型有哪些(OSI模型和TCP/IP模型),每一层的功能及涉及到的物理设备有哪些。 4、如何给网络接口配置多个地址,有哪些方式? 5、常用的网络管理类工具有哪些,并用示例形式描述他们的使用方…

    Linux干货 2016-11-14
  • LVM 2 介绍以及怎么使用?

    一、 LVM是什么? LVM利用Linux内核的device-mapper来实现存储系统的虚拟化(系统分区独立于底层硬件)。 通过LVM,你可以实现存储空间的抽象化并在上面建立虚拟分区(virtual partitions),可以更简便地扩大和缩小分区,可以增删分区时无需担心某个硬盘上没有足够的连续空间, without getting caught up …

    Linux干货 2017-01-06
  • 根据作业浅析正则表达式

        什么是正则?正则就是,那种体现出某种规律的不变性或者对称性的物理量或关系。     正则表达式(Regular Expression):由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能(linux中,可以使用:man …

    Linux干货 2017-07-30
  • Linux命令的使用格式以及命令帮助信息的获取方式

    1.Linux系统上的命令使用格式 2.Linux系统程序文件存放位置 3.Linux获取命令的帮助信息 区分内部命令和外部命令 内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。 外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。 #type COMMAND 内部命令获取帮助信息:#help COMMAND 外部命令获取帮助信息…

    Linux干货 2016-10-29
  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 [ro…

    Linux干货 2016-07-29