首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux_历史命令

Linux_历史命令

作者头像
用户10551528
发布2023-05-09 13:21:08
发布2023-05-09 13:21:08
2.1K00
代码可运行
举报
运行总次数:0
代码可运行

Linux会保存用户的历史指令

历史指令保存在用户目录下的.bash_history文件(历史记录文件)中,并且每条指令都用时间戳的形式记录了执行时刻

当用户通过shell进入Linux系统时,Linux系统会先将.bash_history中的保存的之前的历史指令读取到历史记录缓存区中,在用户正常退出shell之前,执行的所有指令也会先记录在缓存区中,当用户正常退出shell(exit或者control+d)时,shell进程会自动将历史记录缓存区中的所有历史记录写入到.bash_history中

查看历史缓冲区
代码语言:javascript
代码运行次数:0
运行
复制
history #查看历史记录缓存区中保存的历史指令

从最开始到现在为止

通过键盘上下键快捷查看历史缓冲区
定量查看历史缓冲区的历史指令
代码语言:javascript
代码运行次数:0
运行
复制
history <数字> #查看缓冲区中最近的n条历史指令
手动写入.bash_history

如果执行了几条指令,比如执行两次lsll,查看一下历史缓存区

再查看.bash_history,发现没有记录在里面,因为历史记录保存在了历史缓存区,当退出shell的时候才会自动从缓存区写入.bash_history

代码语言:javascript
代码运行次数:0
运行
复制
history -w #手动将历史缓存写入用户目录下的.bash_history

正常情况下,只有在 Shell 正常退出时,才会将缓冲区内容保存到.bash_history。如果想主动保存缓冲区的历史记录,执行 -w 选项即可

清除历史缓冲区
代码语言:javascript
代码运行次数:0
运行
复制
history -c #清除历史缓冲区

历史缓冲区写入.bash_history其实就是用新内容覆盖掉原有内容,所以清除历史缓冲区就是清除本次登录用户时的所有操作的记录,不会删除之前的历史记录

重复执行缓冲区历史指令
代码语言:javascript
代码运行次数:0
运行
复制
!<数字> #重复执行缓冲区中的第n条历史指令
代码语言:javascript
代码运行次数:0
运行
复制
!-<数字> #重复执行缓冲区中倒数第n行历史指令
代码语言:javascript
代码运行次数:0
运行
复制
!! #重复执行上一条命令
搜索历史命令
代码语言:javascript
代码运行次数:0
运行
复制
快捷键:ctrl + r	# 输入残缺指令,搜索对应完整历史指令
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-12-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Linux会保存用户的历史指令
    • 查看历史缓冲区
      • 通过键盘上下键快捷查看历史缓冲区
      • 定量查看历史缓冲区的历史指令
    • 手动写入.bash_history
    • 清除历史缓冲区
    • 重复执行缓冲区历史指令
    • 搜索历史命令
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档