作用
- 用于显示历史记录和执行过的指令命令
- 当登录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
今天的文章Linux 中history命令详解分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/24622.html