Linux 中history命令详解

4 篇文章 1 订阅
1 篇文章 0 订阅

作用

  • 用于显示历史记录和执行过的指令命令 
  • 当登录shell或者是退出的时候会自动进行读取和存储

语法

# history (选项)(参数)
参数含义备注
n显示最近的n条记录 
-a 将历史命令缓冲区中命令写入历史命令文件中 
-c将目前的shell中的所有 history 内容全部消除实际为假删除
-r将历史命令文件中的命令读入当前历史命令缓冲区 
-w将当前历史命令缓冲区命令写入历史命令文件中 
-d删除历史记录中指定的行 

部分案例

# 获取历史记录的最新2两条
[root@localhost data]# history 2

344  cat data.log | grep 5435
345  printf '%x\n' 20235 # 将20235以16进制输出


# 执行最后一次命令
[root@localhost data]# !!

history
344  cat data.log | grep 5435
345  printf '%x\n' 20235 # 将20235以16进制输出

 清除历史记录

  • 历史记录在每次正确的退出shell的时候会存储到 ~/.bash_history文件中
  • 直接进行编辑该文件能达到清除历史记录的目的

全部删除历史记录

# 清空当前历史记录(只是清空缓存中的历史记录,伪删除)
[root@localhost ~]# history -c

# 将当前缓存中的历史记录写入文件(缓存中的记录是空的-用空的数据写入文件,将文件内部删除)
[root@localhost ~]# history -w

 删除某一行数据

# 删除358行历史记录(这样可以有针对性的保留历史记录)
[root@localhost ~]# history -d 358

 Vim修改.bash_history文件

# 通过vim或者是vi命令直接修改.bash_history文件
[root@localhost ~]# vi ~/.bash_history

 参数配置

  • 修改/etc/profile文件 

命令时间展示(HISTTIMEFORMAT )

# 显示命令时间
[root@localhost ~]# export HISTTIMEFORMAT='%F %T '

[root@localhost ~]# history
    1  2020-08-04 20:26:10 hisotry -w

 命令大小(HISTSIZE)

#将HISTSIZE设置为0,代表禁用history
[root@localhost ~]# export HISTSIZE=0

# 设置命令保存的行数,超过的话会自动删除最老的数据
[root@localhost ~]# export HISTSIZE=100000
[root@localhost ~]# export HISTFILESIZE=100000

历史记录文件名称(HISTFILE) 

# 设置历史记录的文件名称为history.cmd
[root@localhost ~]# export HISTFILE=history.cmd

剔除连续相同命令 (HISTCONTROL )

# 剔除连续的相同命令的条目,仅剩余一条
[root@localhost ~]# export HISTCONTROL=ignoredups

 强制不记住某命令

# 在不想被记住的命令前面输入一个空格-就不会被记住
[root@localhost ~]# export HISTCONTROL=ignorespace

#忽略pwd、ls命令
[root@localhost ~]# export HISTIGNORE="pwd:ls:"

 

 当前shell终止history记录

  • PS :set +o history 命令会被记录到历史记录中  
# 设置当前shell内的命令不再进入日志中
[root@localhost data]# set +o history

 结束隐藏命令记录

  • PS :set -o history 命令不会被记录到历史中 
# 设置当前shell内的重新进入日志中
[root@localhost data]# set -o history

 

  • 8
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值