如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率。本文将通过实例的方式向你介绍 history 命令的用法。

使用 HISTTIMEFORMAT 显示时间戳:

当你从命令行执行 history 命令后,通常只会显示已执行命令的序号和命令本身。如果你想要查看命令历史的时间戳,那么可以执行:

# export HISTTIMEFORMAT='%F %T '
# history | more1  2016-06-21 10:55:09 ps -ef|grep java2  2016-06-21 10:55:09 yum install lrzsz3  2016-06-21 10:55:09 ping www.baidu.com4  2016-06-21 10:55:09 ifconfig5  2016-06-21 10:55:09 yum install lrzsz

注意:这个功能只能用在当 HISTTIMEFORMAT 这个环境变量被设置之后,之后的那些新执行的 bash 命令才会被打上正确的时间戳。在此之前的所有命令,都将会显示成设置 HISTTIMEFORMAT 变量的时间。

使用 HISTSIZE 控制历史命令记录的总行数

将下面两行内容追加到 .bash_profile 文件并重新登录 bash shell,命令历史的记录数将变成 450 条:

# vi ~/.bash_profile
HISTSIZE=450
HISTFILESIZE=450

使用 HISTFILE 更改历史文件名称

默认情况下,命令历史存储在 ~/.bash_history 文件中。添加下列内容到 .bash_profile 文件并重新登录 bash shell,将使用 .commandline_warrior 来存储命令历史:

# vi ~/.bash_profile
HISTFILE=/root/.commandline_warrior

使用 HISTCONTROL 从命令历史中剔除连续重复的条目

在下面的例子中,pwd 命令被连续执行了三次。执行 history 后你会看到三条重复的条目。要剔除这些重复的条目,你可以将 HISTCONTROL 设置为 ignoredups:  

export HISTCONTROL=ignoredups

使用 HISTCONTROL 清除整个命令历史中的重复条目

上例中的 ignoredups 只能剔除连续的重复条目。要清除整个命令历史中的重复条目,可以将 HISTCONTROL 设置成 erasedups:  

# export HISTCONTROL=erasedups

使用 HISTCONTROL 强制 history 不记住特定的命令  

将 HISTCONTROL 设置为 ignorespace,并在不想被记住的命令前面输入一个空格:

# export HISTCONTROL=ignorespace

使用 -c 选项清除所有的命令历史  

如果你想清除所有的命令历史,可以执行:

# history -c

使用 HISTSIZE 禁用 history  

如果你想禁用 history,可以将 HISTSIZE 设置为 0:

# export HISTSIZE=0

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

下面的例子,将忽略 pwd、ls、ls -ltr 等命令:

# export HISTIGNORE=”pwd:ls:ls -ltr:”
# pwd
# ls
# ls -ltr
# service httpd stop
# history | tail -3
79  export HISTIGNORE=”pwd:ls:ls -ltr:”
80  service httpd stop
81  history
[Note that history did not record pwd, ls and ls -ltr]

配置实例如下,参数可以自己改动: 

vim /etc/profile
export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S] "
export HISTSIZE=20000
export HISTFILESIZE=10000000
export HISTCONTROL=ignoredups
source /etc/profile 

.

参考文档:https://linuxtoy.org/archives/history-command-usage-examples.html

History(历史)命令用法相关推荐

  1. LINUX下用CTRL+R快速搜索HISTORY历史命令,快速索引到之前使用过的命令行语句

    LINUX下用CTRL+R快速搜索HISTORY历史命令,快速索引到之前使用过的命令行语句 前提是,搜索已经使用的命令,否则是查不出来结果的. ctrl+r 用途:反向搜索执行过的命令.(revers ...

  2. 设置linux查看历史命令显示两个小时内,linux系统中history历史命令显示执行日期和时间...

    在我们日常维护工作中,history历史命令查看是经常会用到的,特别是系统出了问题,肯定会在第一时间要查看之前都执行过什么命令,但是系统默认的history命令列表中是不显示命令执行时间和日期的,这就 ...

  3. linux history存放位置,Linux中history历史命令使用方法详解

    当你在玩Linux的时候,如果你经常使用命令行来控制你的Linux系统,那么有效地使用命令历史机制将会使效率获得极大提升.事实上,一旦你掌握了我在下面给出的15个有关Linux history历史命令 ...

  4. Linux中history历史命令使用方法详解

    在/etc/profile里添加如下:#History export HISTTIMEFORMAT="[%F %T]" HISTDIR=/home/common/.hist if ...

  5. centos history历史命令添加时间戳

    history历史命令添加时间戳 linux系统中经常会使用的history命令来查看历史命令,但是,一般的history命令只显示历史命令,并没有显示历史什么时间执行的命令,如下图所示: 历史命令添 ...

  6. linux history 历史命令行查询和使用

    history命令:用于显示历史记录和执行过的指令命令,可以使用符号!执行指定序号的历史命令.例如,要执行第2个历史命令,则输入!2. history命令:是被保存在内存中的,当退出或者登录shell ...

  7. history 历史命令记录功能如何防坏人(高级)

    在 Linux 下面可以使用 history 命令查看用户的所有历史操作,同时 shell 命令操作记录默认保存在用户目录的 .bash_history 文件中.通过这个文件可以查询 shell 命令 ...

  8. 不留痕迹的清除部分history历史命令记录

    有时候只想清除自己执行的一些历史命令,而不想清除整个系统的历史命令,而且也不想让别人看到自己有编辑过.bash_history文件. 有的人会说直接使用history -c命令来清除. 这种方法不是不 ...

  9. Linux删除history历史命令记录

    有时在系统中登录数据库时不小心明文输入了密码,为了保护隐私,需要将部分或者全部历史记录删除. 删除全部历史记录 history -c 不过在大多数情况下只需要清除部分命令即可 方法1.直接修改历史记录 ...

  10. linux清除history历史命令:history -c

最新文章

  1. webview 交互
  2. DAS、NAS、SAN、iSCSI 存储方案概述
  3. 汇编语言快速入门学习笔记
  4. python编程入门与案例详解-python编程入门知识练习
  5. 商业计划书范文3000_项目融资商业计划书模板范文PPT
  6. php城市 省份,怎么获取省份和城市?
  7. 基于串口通信的摇杆控制器 ---- 摇杆数据的读取、通信协议、从设备解开数据包
  8. [网络] 数字签名和数字证书的原理机制
  9. POJ 1849 Two(树的直径+思维)
  10. OpenGL - Deferred Rendering
  11. 计算机合成图像的技术可应用于,计算机系统概论第五章测验与答案.doc
  12. MySQL limit 1,1的含义
  13. UiPath中国市场rpa占有率
  14. keytool生成keystore、truststore、证书
  15. 三十三、数据库相关4
  16. 你越努力,越没有领导潜力!
  17. 意大利进口便携式现场振动分析仪N600基本功能参数
  18. 突发!复旦大学一教师因工作关系怀恨在心,持刀杀害同事
  19. 搭建个人云服务器系列 (二)- 公网访问
  20. 管理体系审核员注册常见问题

热门文章

  1. 一篇让你搞懂 Nginx
  2. 如何模拟超过 5 万的并发用户
  3. 学习别跟我谈兴趣 No.88
  4. 【廖雪峰python入门笔记】break和continue
  5. 中医研究登上Nature
  6. 同时上哈佛,还一起一作发Nature!这对95后学霸情侣让人慕了……
  7. 这位挺身而出的研究生,被直接录用!
  8. SparkStreaming靠什么征服了字节跳动?
  9. 用LaTeX优雅地书写伪代码:Algorithm2e简明指南
  10. 机器学习实践中的10个小秘诀!