history和历史命令操作

这玩意内容太多了,单独放起来好了,好烂的编辑器,我决定不在这里写了ー( ̄~ ̄)ξ

history [选项] [参数]

-c: 清空命令历史

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

n: 显示最近的n条历史,如history 10 显示最近10条历史命令

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

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

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

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

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

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

相关变量

HISTSIZE:命令历史记录的条数

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

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

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

HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史

控制命令历史的记录方式:

环境变量:HISTCONTROL

ignoredups 默认,忽略重复的命令,连续且相同为“重复”

ignorespace 忽略所有以空白开头的命令

ignoreboth 相当于ignoredups, ignorespace的组合

erasedups 删除重复命令

export 变量名=”值“

存放在 /etc/profile 或 ~/.bash_profil

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

使用上方向键,并回车执行

按!! 并回车执行

输入!-1 并回车执行

按Ctrl+p并回车执行

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

Ctrl + n 显示当前历史中的下一条命令,但不执行

Ctrl + j 执行当前命令

!n 执行history命令输出对应序号n的命令

!-n 执行history历史中倒数第n个命令

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

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

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

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

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

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

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

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

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 开头的命令,并获取它的所有 参数

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/93865

(0)
伪装的萝莉伪装的萝莉
上一篇 2018-03-31 09:55
下一篇 2018-03-31 10:42

相关推荐

  • cp 常用选项

    cp 选项:

    Linux笔记 2018-04-01
  • 初学Linux之标准I/O和管道

    标准输入和输出 程序是由指令+数据组成程序的数据流有三种: 输入数据流:<–标准输入(stdin),一般默认是键盘输出数据流:–>标准输出(stdout),一般默认到终端窗口错误输出流:–>标准错误(stderr),一般默认到终端窗口 标准输入:0标准输出:1错误输出:2 I/O重定向:改变默认位置 输出…

    Linux笔记 2018-04-03
  • 用户管理练习

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

    2018-05-28
  • awk小练习

    linux awk

    Linux笔记 2018-05-20
  • AWK

    ### awk awk分为nawk,gawk 我们shell中常用的awk 其版本是gawk “`AWK会把file中的每一行(记录/可以指定分隔符),读入空间中并默认以空白(TAB\space\\n)等分割成几个字段,每个字段用$#表示$0表示整行本身“` awk [Option] ‘program’ file option -F:…

    Linux笔记 2018-05-20