首页 > 代码库 > History、Help——基本命令(4)

History、Help——基本命令(4)

1. history

当你在玩Linux的时候,如果你经常使用命令行来控制你的Linux系统,那么有效地使用命令历史机制将会使效率获得极大提升。

historyshell的内置命令,其内容在系统默认的shellman手册中。

一些用法:

   history[-c] [-d offset] [n]

   history-anrw [filename]

    history-ps arg [arg...]

       -c:清空命令历史

       -doffset: 删除历史中指定的第offset个命令

       n:显示最近的n条历史

 

Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中,默认保存1000条。

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

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

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

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

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

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

 

        history显示当前终端的历史记录

        !!重复执行上一条命令

        !-n重复执行倒数第n条命令

        !n重复执行第n条命令

        ctrl+p等于向上方向键,翻出上一条命令。

        ctrl+n等于向下方向键,翻出下一条命令。

        ctrl+j等于enter 执行当前命令

        !:0执行前一条命令(去除参数)

        !string重复前一个以“string”开头的命令

        !?string重复前一个包含string的命令

        !string:p仅打印以string开头的命令历史,而不执行

        !$:p打印输出 !$ (上一条命令的最后一个参数)的内容

        !*:p打印输出 !*(上一条命令的所有参数)的内容

        ^string删除上一条命令中的第一个string

        ^string1^string2将上一条命令中的第一个string1替换为string2

        !:gs/string1/string2将上一条命令中所有的string1都替换为string2

        技术分享            PS:包含string1的内容也会变成string2

 

         ctrl-r来在命令历史中搜索命令

           reverse-i-search`’:

         Ctrl+g:从历史搜索模式退出




2. 调用历史参数详解

要重新调用前一个命令中最后一个参数:

        !$     表示

        Esc, .(点击Esc键后松开,然后点击 . 键)

        Alt+ .(按住Alt键的同时点击 . 键)

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

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

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

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

    command !n:^ 调用第n条命令的第一个参数

    command !n:$ 调用第n条命令的最后一个参数

    command !n:m 调用第n条命令的第m个参数

    command !n:* 调用第n条命令的所有参数

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

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

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

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




3. bash快捷键

    Ctrl+L 清屏

    Ctrl+O 执行当前命令,并重新显示本命令

    Ctrl+s 锁定,但仍可以运行命令。

    Ctrl+q 解锁

    Ctrl+C 强制结束

    Ctrl+D 正常终止

    Ctrl+Z 挂起(暂停)命令

    Ctrl + a 光标移到命令行首,相当于Home

    Ctrl + e 光标移到命令行尾,相当于End

    Ctrl + f 光标向右移动一个字符

    Ctrl + b 光标向左移动一个字符

    Alt + f 向右移动一个单词

    Alt + b 向左移动一个单词

    Ctrl + xx 光标在命令行首和光标之间移动

    Ctrl + u 删除光标之前的内容

    Ctrl + k 删除光标这后的内容

    Alt + r 清除全部内容

    Ctrl + w 从光标处向左删除至单词首

    Alt + d 从光标处向右删除至单词尾

    Ctrl + d 删除光标后的一个字符

    Ctrl + h 删除光标前的一个字符

    Ctrl + y 将删除的字符粘贴至光标后

    Alt + c 从光标处开始向右更改为首字母大写的单词

    Alt + u 从光标处开始,将右边一个单词更改为大写

    Alt + l 从光标处开始,将右边一个单词更改为小写

    Ctrl + t 交换光标处和之前的字符位置

    Alt + t 交换光标处和之前的单词位置

    Alt + N 提示输入指定字符后,重复显示该字符N次(N表示具体的数字)

    Ctrl-Shift-n 创建新窗口

    Ctrl-Shift-q 关闭当前窗口

    Ctrl-Shift-t 创建一个标签页

    Ctrl-Shift-w 关闭一个标签页

    Ctrl-PaUp/PgUn 切换到下一个/前一个标签页

    Ctrl-Shift-c 复制选中的文本

     Ctrl-Shift-v把文本粘帖到当前光标处




4. Whatis

whatis命令用户查询一个命令执行什么功能,并将查询结果打印到终端上。

whatis command man -f command

技术分享

(仅能提供命令基本的介绍。不提具体用法。)

 

Whatis是基于数据库的查找

    优点:检索速度快

    缺点:缺乏实时性

数据文件的位置:

     CentOS6中位置:/var/cache/man/whatis

技术分享

     当输入makewhatis命令后,whatis文件开始收集数据,并覆盖原来的数据。因此,如果命令运行过程输入Ctrl+C强制断的话,whatis文件将变为不完整或者为空。此时将无法使用whitis命令

技术分享

当完整的运行一次whatis后,文件又恢复完整。

技术分享



CentOS7中位置:/var/cache/man/index.db

技术分享

CentOS7中收集数据的命令不是makewhatis了,而是mandb

技术分享

可以看到删除index.db之后无法使用whatis命令。而运行mandb命令之后,index.db将被重建,whatis命令又可以使用了。

技术分享




5. 获取帮助

1help

help command命令用于显示shell内部命令的帮助信息。help命令只能显示shell内部的命令帮助信息。

技术分享

help -d :显示简短描述

help -s :显示用法的简介

help -m :显示较详细的使用方法

 

2--help

--help用于外部命令技术分享


3man

manmanual的缩写,意为手册、说明书。是由作者写的最权威最详细的帮助文档。通过mancommand指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。whatis所收集的数据库就是来源于man

输入 man date,则出现如下图信息:

技术分享

在这个文档中如果想搜索关键字,可以输入:/+关键字 man中搜索。

例如输入/year技术分享

则会显示所有包含year的地方。

输入q退出文档。

 

man是在程序安装的时候安装的帮助文档,可以在系统的目录下找到,通过指令:ls /user/share/man我们可以看到很多man帮助文档的存储,我们从中看到有很多歌man#文件,linux的一些man指令文档就存在于这些文件内,几乎每个命令都有自己的man页面。

技术分享


man页面根据类型不同,设置成不同的章节

  技术分享

例如passwd,它是一个命令,也有一个passwd是一个配置文件。

  技术分享

我们就需要调用不同的章节来分别查看。

当输入man passwd时,默认进入前面的章节,即第1章节。(后面的数字就代表章节)

技术分享

如果想看第5章节,则在前面加上对应的数字

技术分享

即可显示第5章节内容

技术分享


关于man帮助的段落说明:

技术分享


4)使用less命令可以更方便的阅读man命令。

命令格式:less [参数]文件

技术分享

less more 类似,但使用 less 可以随意浏览文件,而more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。相比于more命令,less命令更加灵活强大一些,因此在这里就不介绍more了。

 

具体用法:

   ^f, ^F:向下翻屏

   b,^b:向下翻屏

   d,^d:向下翻半屏

   u,^u:向上翻半屏

   q:退出

   G:翻至文件尾部

   /KEYWORD:以KEYWORD为关键字,从当前位置向文件尾部搜索,不区分大小写。

      ?KEYWORD:同上,以KEYWORD为关键字进行模糊查询,从当前位置向文件尾部搜索,不区分大小写。

   n:下一个  

   N:上一个

 

本文出自 “Ty_endless” 博客,请务必保留此出处http://tyendless.blog.51cto.com/12435756/1951547

History、Help——基本命令(4)