<p>在 linux 系统中,history 命令的使用技巧包括:一、直接输入 history 查看命令历史,每条命令前的数字为编号,可用于调用,默认保存 1000 条(可通过 histsize 修改);二、1. 按 ctrl + r 输入关键词进行反向搜索,继续按 ctrl + r 可查找更早匹配项,enter 执行或 → 键复制到命令行;2. 使用 history | grep 关键词过滤输出,如 history | grep ssh 可查找所有包含 ssh 的命令;三、1. 使用 !编号 执行指定编号命令,如 !1050;2. 使用 !命令前缀 执行最近以该前缀开头的命令,如 !scp;3. !$ 引用上条命令最后一个参数,!* 引用上条命令所有参数(除命令本身);四、通过环境变量优化行为:1. histsize 和 histfilesize 设置历史条数;2. histcontrol 设为 ignoredups 忽略连续重复命令;3. 设为 ignorespace 忽略以空格开头的命令;4. 设为 ignoredups:erasedups:ignorespace 同时启用多个选项;5. histtimeformat 设置时间戳格式,使 history 输出包含时间;6. history -c 清除当前会话内存中的全部历史;7. history -d 编号 删除指定编号命令;8. history -w 保存当前会话历史到文件;9. history -r 从文件重新读取历史;五、1. 命令前加空格可避免记录(需设置 ignorespace);2. history n 显示最近 n 条命令;3. history | awk '{print $2}' | sort | uniq -c | sort -nr | head -10 统计最常用的 10 个命令;掌握这些技巧能显著提升命令行效率,关键是合理设置环境变量、善用搜索与引用、避免泄露敏感信息。</p>

在 Linux 系统中,
history
history
直接输入
history
history
输出示例:
1001 ls -l 1002 cd /var/log 1003 tail syslog 1004 history
每条命令前面的数字是其在历史记录中的编号,可用于后续调用。
提示:默认情况下,bash 会保存最近 1000 条命令(可通过 HISTSIZE 环境变量修改)。
Ctrl + R
在终端中按下
Ctrl + R
例如:
Ctrl + R
log
tail /var/log/messages
Ctrl + R
找到后按
Enter
grep
如果想查找包含某个关键词的所有历史命令,可以结合
grep
history | grep ssh
这会列出所有包含
ssh
假设
history
1050 systemctl restart nginx
你可以通过
!1050
!1050
比如想再次运行上次的
scp
!!scp
更准确的写法是:
!scp
这会执行最近一次以
scp
!$
cp /home/user/file.txt /tmp/ ls !$ # 相当于 ls /tmp/
!*
sudo apt install vim !* # 得到: vim
你可以通过设置环境变量来优化
history
~/.bashrc
# 设置保存的历史命令条数 export HISTSIZE=5000 export HISTFILESIZE=5000 # 忽略重复命令(连续重复只记录一次) export HISTCONTROL=ignoredups # 忽略以空格开头的命令 export HISTCONTROL=ignorespace # 或者同时启用多个控制选项 export HISTCONTROL=ignoredups:erasedups:ignorespace # 将每条命令的时间戳也保存下来 export HISTTIMEFORMAT="%F %T "
设置
后,HISTTIMEFORMAT登录后复制输出会包含时间,如:history登录后复制1001 2025-04-05 10:23:10 ls -la登录后复制
清除全部历史:
history -c
注意:这只是清除了当前会话的内存记录,不会自动写入文件。
删除特定命令(比如删掉包含密码的):
history -d 1050 # 删除编号为 1050 的命令
手动保存当前会话的历史:
history -w
从文件重新读取历史:
history -r
避免记录敏感命令:在命令前加一个空格(前提是设置了
ignorespace
ssh user@host -i /path/to/secret.key
这条命令不会被记录。
查看最近几条命令:
history 10
只显示最近 10 条。
将 history 输出按频率统计:
history | awk '{print $2}' | sort | uniq -c | sort -nr | head -10这个命令可以找出你最常用的 10 个命令。
基本上就这些。
history
以上就是如何查看Linux命令历史 history命令使用技巧的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号