首页 > 系统教程 > LINUX > 正文

linux显示命令历史记录是什么-history 命令使用与实例

P粉390130307
发布: 2025-08-17 11:22:12
原创
806人浏览过

linux显示命令历史记录是什么-history 命令使用与实例

Linux history 命令完整使用手册

history 是 Linux 系统中一个非常实用的内置命令,用于记录用户在终端执行过的命令历史。这个功能在以下场景特别有用:

  1. 操作回顾:查看之前运行过的命令
  2. 快速复用:避免重复输入长命令
  3. 故障排查:分析系统操作过程
  4. 效率提升:通过历史命令高效完成重复任务

当你在终端输入命令时,Bash 会将这些命令暂存于内存,并在会话结束时写入

~/.bash_history
登录后复制
文件(默认设置下)。


基础语法和操作

history 命令的基础语法很简单:

<pre class="brush:php;toolbar:false;">
history [选项] [参数]
登录后复制

常见用法

1、查看全部历史记录:

<pre class="brush:php;toolbar:false;">
history
登录后复制

2、显示最近 N 条记录:

<pre class="brush:php;toolbar:false;">
history 10  # 显示最近10条命令
登录后复制

3、清空所有历史记录:

<pre class="brush:php;toolbar:false;">
history -c
登录后复制

4、删除指定编号的历史记录(例如删除第1010条):

<pre class="brush:php;toolbar:false;">
history -d 1010
登录后复制

常用选项参数说明

history 命令提供多个实用选项:

选项 作用 示例
`-c` 清除所有历史记录 `history -c`
`-d` 删除特定位置的历史记录 `history -d 1005`
`-a` 立即把内存中的历史写入文件 `history -a`
`-n` 从历史文件中读取未加载的历史记录 `history -n`
`-r` 将历史文件内容加载到当前会话 `history -r`
`-w` 将当前历史记录保存到历史文件 `history -w`

进阶技巧与实战用法

1. 快速调用历史命令

示例

!n # 执行历史记录中第n条命令
!! # 执行上一条命令
!string # 执行最近一条以string开头的命令
具体应用:

示例

!1024 # 执行历史记录中编号为1024的命令
!! # 重新执行上一条命令
!vim # 执行最近一条以vim开头的命令

2. 搜索历史命令

使用

Ctrl+R
登录后复制
可以反向搜索历史命令,输入部分关键词即可找到匹配项。

3. 历史命令替换

示例

^old^new # 将上一条命令中的old替换为new后执行
实际案例:

示例

$ cat file1.txt
$ ^file1^file2 # 相当于执行 cat file2.txt

4. 显示命令执行时间

~/.bashrc
登录后复制
中添加以下配置可以显示命令执行时间戳:

豆绘AI
豆绘AI

豆绘AI是国内领先的AI绘图与设计平台,支持照片、设计、绘画的一键生成。

豆绘AI 485
查看详情 豆绘AI

示例

export HISTTIMEFORMAT="%F %T "
然后执行:

示例

source ~/.bashrc
之后

history
登录后复制
命令会显示每条命令的具体执行时间。


环境变量自定义设置

通过环境变量可以调整 history 命令的行为:

变量 用途 推荐值
`HISTSIZE` 内存中保存的历史命令数量 `5000`
`HISTFILESIZE` 历史文件中保存的命令数量 `10000`
`HISTCONTROL` 控制历史记录方式 `ignoredups:erasedups`
`HISTIGNORE` 指定不记录的命令 `"ls:cd:pwd:exit"`

配置示例(添加到

~/.bashrc
登录后复制
):

示例

export HISTSIZE=5000
export HISTFILESIZE=10000
export HISTCONTROL=ignoredups:erasedups
export HISTIGNORE="ls:cd:pwd:exit"
export HISTTIMEFORMAT="%F %T "

典型应用场景

场景1:找回遗忘的命令

示例

history | grep "apt install"

场景2:统计高频使用的命令

示例

history | awk '{CMD[$2]++;count++;} END {for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl | head -n10

场景3:备份历史记录

示例

history -a # 确保最新命令已写入文件
cp ~/.bash_history ~/command_history_backup_$(date +%F).txt

使用注意事项

  1. 隐私安全:历史记录可能包含敏感信息(如密码),注意妥善保管
  2. 多终端问题:不同终端会话默认不会同步历史记录
  3. 记录丢失:异常退出可能导致部分命令未保存
  4. 性能影响:过大的历史文件可能影响系统性能

总结练习

  1. 查看你的命令历史,找出最近使用的5条git命令

    <pre class="brush:php;toolbar:false;">
     history | grep git | tail -5
    登录后复制
  2. 配置你的bash环境,使历史记录显示时间戳并忽略重复命令

  3. 创建一个别名,快速备份当前历史记录到指定目录

    <pre class="brush:php;toolbar:false;">
     alias backup_history='cp ~/.bash_history ~/history_backups/history_$(date +%Y%m%d_%H%M%S).txt'
    登录后复制
  4. 尝试使用

    Ctrl+R
    登录后复制
    搜索你之前执行过的某个复杂命令

熟练掌握 history 命令,可以显著提高你在 Linux 终端的工作效率,减少重复输入,并更好地管理你的命令行操作历史。

以上就是linux显示命令历史记录是什么-history 命令使用与实例的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号