Linux history 显示与操纵历史命令

869 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

history命令用于显示用户以前执行过的历史命令,并且能对历史命令进行追加和删除等操作。如果经常使用Linux命令,那么使用history命令可以有效地提高效率,让工作事半功倍,接下来就来介绍一下history命令的使用方法。

使用

语法格式

history[选项][参数]

常用选项:

  • -c:清空当前历史命令
  • -a:将历史命令缓冲区中命令写入历史命令文件中
  • -r:将历史命令文件中的命令读入当前历史命令缓冲区
  • -w:将当前历史命令缓冲区命令写入历史命令文件中

参数:

n:显示最近的n条历史命令。

实例

使用history命令显示最近使用的10条历史命令

[root@centos7 ~]# history 10
 1086  docker attach my_mysql
 1087  pyenv local 3.7.4
 1088  ll
 1089  cd lnav-0.10.0
 1090  ll
 1091  cd ../
 1092  cd PyPy/
 1093  ls
 1094  vim test.py
 1095  history 10

从命令历史中执行一个指定的命令

在上面的历史命令中,如果我们想重复执行第1086条命令,那么可以执行!1086即可。

!1086

在使用过程中,我们通常会与grep命令配合使用,例如,查询含docker的命令:

history | grep docker

将本次登录的命令写入历史文件中

history -w

将命令历史文件中的内容读入到目前shell的history记忆中

history -r  

将当前shell会话的历史命令追加到命令历史文件中

history -a  

清空当前历史命令列表

history -c 

使用 HISTIGNORE 忽略历史中的特定命令

比如,我们不想在执行history的时候将pwdll等此类的比较简单的命令显示出来,可以进行如下设置:

export HISTIGNORE="pwd:ll:"

原创不易,如果小伙伴们觉得有帮助,麻烦点个赞再走呗~

最后,感谢女朋友在工作和生活中的包容、理解与支持 !