linux常用的20个命令history
linux常用的20个命令history详细介绍
在 Linux 中,history 命令用于管理用户输入过的命令历史记录,方便查看、重复执行或搜索之前使用的命令。以下是关于 history 命令的常用用法和相关操作:
1. 查看历史命令列表
bash
n
- 输出格式:
编号 命令,例如:plaintext1 ls -l2 cd /var
3 sudo apt update
2. 清除当前会话的历史记录(临时清除,重启后恢复)
bash
3. 清除历史文件中的记录(永久清除,需重启生效)
bash
~/.bash_history
~/.bash_history
4. 执行历史命令
- 通过编号执行:bash
编号 - 执行上一条命令:bash
- 执行最后一条以指定字符串开头的命令:bash
字符串
5. 搜索历史命令
- 交互式反向搜索(Ctrl+R):
按下Ctrl+R,输入关键词,匹配最近的历史命令,按Enter执行,按ESC退出搜索。 - 正向搜索(Ctrl+S,需禁用终端锁定):
部分终端需先通过stty -ixon禁用流量控制,再按Ctrl+S搜索。
6. 查看历史命令的时间戳(需配置)
默认不显示时间,需在 ~/.bashrc 或 ~/.zshrc 中添加:
bash
~/.bashrc
7. 删除指定编号的历史命令
bash
编号
8. 保存当前会话历史到文件(默认退出时自动保存,也可手动保存)
bash
9. 查看历史命令存储文件
- bash shell:历史记录存储在
~/.bash_history(非当前会话命令,而是所有历史记录)。 - zsh shell:存储在
~/.zsh_history。 - 可直接编辑该文件(谨慎!错误修改可能导致问题):bash
~/.bash_history
10. 限制历史记录数量
通过环境变量配置:
bash
修改后需生效:source ~/.bashrc。
11. 忽略重复命令(连续重复)
在 ~/.bashrc 中添加:
bash
ignoredupsignorealldups
ignoreboth
12. 执行历史命令时不记录当前命令
在命令前加空格,该命令不会被记录到历史(需 HISTCONTROL 包含 ignorespace):
bash
/
13. 编辑历史命令并执行(fc 命令)
bash
fc 编号fc
14. 获取历史命令的参数
!$:上一条命令的最后一个参数bash/var/log/$
!*:上一条命令的所有参数!^:上一条命令的第一个参数
15. 禁用历史记录(临时)
bash
HISTORY```bash
HISTORY
总结:常用命令速查表
| 命令 | 说明 |
|---|---|
history |
显示所有历史命令(带编号) |
history n |
显示最近 n 条历史命令 |
!编号 |
执行指定编号的历史命令 |
!! |
执行上一条命令 |
!字符串 |
执行最后一条以指定字符串开头的命令 |
history -c |
清除当前会话的历史记录(临时,重启后恢复) |
history -d 编号 |
删除指定编号的历史命令 |
history -w |
保存当前历史到文件(覆盖式) |
history -a |
追加当前会话新命令到历史文件 |
Ctrl+R |
反向搜索历史命令(输入关键词匹配) |
HISTTIMEFORMAT |
配置历史命令显示时间戳 |
HISTCONTROL=ignoredups |
忽略连续重复的命令 |
通过合理使用 history 命令及其相关配置,可以高效管理和复用历史命令,提升终端操作效率。实际使用中可结合 Ctrl+R 搜索和快捷键(如 !!、!$)进一步提高速度。
展开过程