0

0

如何查看Linux命令历史 history命令使用技巧

P粉602998670

P粉602998670

发布时间:2025-08-30 11:43:01

|

778人浏览过

|

来源于php中文网

原创

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 个命令;掌握这些技巧能显著提升命令行效率,关键是合理设置环境变量、善用搜索与引用、避免泄露敏感信息。

如何查看Linux命令历史 history命令使用技巧

在 Linux 系统中,

history
命令是日常使用频率非常高的工具之一,它能帮助我们快速查看、搜索甚至重复执行之前输入过的命令。掌握它的使用技巧,可以显著提升命令行操作效率。下面介绍几种实用的
history
使用方法。


一、基本用法:查看命令历史

直接输入

history
即可列出最近执行过的命令:

history

输出示例:

 1001  ls -l
 1002  cd /var/log
 1003  tail syslog
 1004  history

每条命令前面的数字是其在历史记录中的编号,可用于后续调用。

提示:默认情况下,bash 会保存最近 1000 条命令(可通过 HISTSIZE 环境变量修改)。

二、搜索历史命令的技巧

1. 使用
Ctrl + R
进行反向搜索

在终端中按下

Ctrl + R
,然后输入关键词,即可从最近的命令开始向前搜索。

例如:

  • 按下
    Ctrl + R
  • 输入
    log
  • 可能出现
    tail /var/log/messages
  • 继续按
    Ctrl + R
    可查找更早的匹配项

找到后按

Enter
执行,或按 → 键将其复制到命令行进行修改。

2. 使用
grep
过滤 history 输出

如果想查找包含某个关键词的所有历史命令,可以结合

grep

history | grep ssh

这会列出所有包含

ssh
的历史命令,非常适用于找回曾经用过的远程登录命令。


三、快速执行历史中的某条命令

1. 按编号执行命令

假设

history
显示:

 1050  systemctl restart nginx

你可以通过

!1050
直接执行这条命令:

!1050

2. 执行最近一次以某命令开头的命令

比如想再次运行上次的

scp
命令:

!!scp

更准确的写法是:

!scp

这会执行最近一次以

scp
开头的命令。

LALALAND
LALALAND

AI驱动的时尚服装设计平台

下载

3. 引用上一条命令的部分内容

  • !$
    :引用上一条命令的最后一个参数
    例如:

    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
看似简单,但配合搜索、引用和环境设置,能极大提升你的终端效率。关键是养成良好的使用习惯,比如合理设置历史大小、善用搜索、避免泄露敏感信息。不复杂,但容易忽略。

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

185

2023.09.27

sort排序函数用法
sort排序函数用法

sort排序函数的用法:1、对列表进行排序,默认情况下,sort函数按升序排序,因此最终输出的结果是按从小到大的顺序排列的;2、对元组进行排序,默认情况下,sort函数按元素的大小进行排序,因此最终输出的结果是按从小到大的顺序排列的;3、对字典进行排序,由于字典是无序的,因此排序后的结果仍然是原来的字典,使用一个lambda表达式作为key参数的值,用于指定排序的依据。

386

2023.09.04

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1349

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

702

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

776

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

572

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

545

2023.07.20

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

68

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
进程与SOCKET
进程与SOCKET

共6课时 | 0.3万人学习

PHP入门到实战消息队列RabbitMQ
PHP入门到实战消息队列RabbitMQ

共22课时 | 1.3万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 2.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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