Linux命令(94)之history

linux命令之history

1.history介绍

linux命令history会记录并显示用户所执行过的所有命令,也可以对其命令进行修改和删除操作。

2.history用法

history 参数

|----|-----------------------------------|
| 参数 | 说明 |
| -a | 将当前会话的历史信息追加到历史文件(.bash_history)中 |
| -c | 删除所有条目从而清空历史列表 |
| -d | 从指定位置删除历史列表 |
| -r | 读取历史文件(.bash_history)到缓冲区 |
| -s | 将指定的命令添加到缓冲区 |
| -w | 将缓冲区信息写入到历史文件(.bash_history) |
[history参数]

3.实例

3.1.将当前会话的历史信息追加到历史文件(.bash_history)中

命令:

history -a

复制代码
[root@centos79-3 ~]# ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=128 time=247 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=128 time=361 ms
^C
--- 1.1.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1014ms
rtt min/avg/max/mdev = 247.939/304.742/361.545/56.803 ms
[root@centos79-3 ~]# ping 2.2.2.2
PING 2.2.2.2 (2.2.2.2) 56(84) bytes of data.
^C
--- 2.2.2.2 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2007ms

[root@centos79-3 ~]# history -a
[root@centos79-3 ~]# tail -f .bash_history 
#1695879396
cat .bash_history 
#1695879406
clear
#1695879409
ping 1.1.1.1
#1695879414
ping 2.2.2.2
#1695879420
history -a
[root@centos79-3 ~]# 

3.2.从指定位置删除历史列表

命令:

history -d 3

复制代码
[root@centos79-3 ~]# history | grep 1289
 1289  2023-09-28 13:54:07 root set +o history
 1313  2023-09-28 14:05:36 root history | grep 1289
[root@centos79-3 ~]# history -d 1289
[root@centos79-3 ~]# history | grep 1289
 1289  2023-09-28 13:55:16 root history
 1312  2023-09-28 14:05:36 root history | grep 1289
 1313  2023-09-28 14:05:46 root history -d 1289
 1314  2023-09-28 14:05:50 root history | grep 1289
[root@centos79-3 ~]# 

3.3.删除所有条目从而清空历史列表

命令:

history -c

复制代码
[root@centos79-3 ~]# history -c
[root@centos79-3 ~]# 

3.4.读取历史文件(.bash_history)到缓冲区

命令:

history -r

复制代码
[root@centos79-3 ~]# history -r
[root@centos79-3 ~]# tail -n 4 .bash_history 
#1695879420
history -a
#1695879044
ifconfig
[root@centos79-3 ~]# 

3.5.将缓冲区信息写入到历史文件(.bash_history)

命令:

history -w

复制代码
[root@centos79-3 ~]# history -w
[root@centos79-3 ~]# tail -n 4 .bash_history 
#1695880068
clear
#1695880071
history -w
[root@centos79-3 ~]# 

3.6.不记录已执行的历史命令

命令:

set +o history

复制代码
[root@centos79-3 ~]# set +o history
[root@centos79-3 ~]# ping 111.111.111.111
PING 111.111.111.111 (111.111.111.111) 56(84) bytes of data.
^C
--- 111.111.111.111 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2021ms
[root@centos79-3 ~]# tail -n 1 .bash_history 
set +o history
[root@centos79-3 ~]# 

3.7.取消不记录已执行的历史命令

命令:

set -o history

复制代码
[root@centos79-3 ~]# history | tail -n 6
 1302  2023-09-28 13:55:10 root ping 16.16.16.16
 1303  2023-09-28 13:55:16 root history
 1304  2023-09-28 13:55:28 root cat .bash_history 
 1305  2023-09-28 13:55:42 root history
 1306  2023-09-28 13:55:51 root history | tail -n 4
 1307  2023-09-28 13:55:58 root history | tail -n 6
[root@centos79-3 ~]# 

另外:

再次执行历史记录命令的三种方式:

第一个方式是:!数字

第二个方式是: ctrl+r 快捷键从小往上搜索,右方向键确定

第三个方式是: !字符串

相关推荐
阿里云大数据AI技术2 小时前
阿里云 EMR AI 助手正式发布:从问答工具到全栈智能运维助手
运维·人工智能
你好潘先生8 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
orion5720 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站1 天前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
程序员老赵1 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位1 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式