这个年纪的我们
 爱情跟不上分开的节奏
 这个年纪的我们
 更珍惜难得的自由
 这个年纪的我们
 比起从前更容易感动
 这个年纪的我们
 徘徊在理想与现实之中
 不知不觉孤独不再可耻了
 不知不觉爸爸的情绪变得脆弱了
 不知不觉一把柴米油盐
 也成为压力了
 不知不觉我们也开始懂事了
                      🎵 齐一《这个年纪》
在 Linux 系统中,history 命令是一种强大的工具,用于查看和管理用户在终端会话中输入的命令历史。这不仅可以帮助你快速回顾之前执行的命令,还可以提高工作效率,特别是在需要重复复杂命令或调试时非常有用。本文将详细介绍如何有效利用 history 命令。
- 基本使用
history 命令默认列出当前用户的命令历史,包括每个命令前的编号。这些编号可以用来快速引用和重用命令: 
history
 
输出示例:
  997  cd projects/
  998  ls
  999  vim script.sh
 1000  gcc program.c
 1001  ./a.out
 1002  history
 
- 重用命令
通过编号调用命令:
使用 ! 后跟命令编号,可以快速执行历史命令: 
!1000
 
上述命令将重新执行 gcc program.c。
调用最后一个命令:
使用 !! 可以重复执行上一个命令:
!!
 
调用以特定字符串开始的最后一个命令:
 如果你记得之前执行的命令以某个特定的字符串开始,可以使用 ! 加字符串的方式执行:
!gcc
 
上述命令将执行最近一次以 gcc 开头的命令。
- 搜索历史命令
使用 history 结合 grep 可以搜索特定的历史命令: 
history | grep "gcc"
 
这将列出所有包含 “gcc” 的历史命令。
- 控制历史记录的大小
设置历史记录的长度:
环境变量 HISTSIZE 和 HISTFILESIZE 分别定义了在内存中保持的命令历史数量和 .bash_history 文件中保存的命令历史数量: 
export HISTSIZE=1000
export HISTFILESIZE=2000
 
临时改变历史记录长度:
 也可以临时更改这些设置,仅对当前会话有效。
- 管理命令历史
清空命令历史:
如果你想清空当前的命令历史,可以使用: 
history -c
 
删除特定命令:
 通过 -d 选项加上命令编号,可以删除特定的历史命令:
history -d 1000
 
- 保存和加载历史
保存命令历史:
手动将命令历史写入文件: 
history -w
 
从文件加载命令历史:
 读取命令历史文件:
history -r
 
使用 history 命令可以显著提高你在 Linux 终端的工作效率,特别是当你需要追踪或重复之前的操作时。掌握这些技巧,将使你能够更加轻松地管理和利用命令历史,加速日常的任务处理。