如何查看和管理 Linux 命令历史记录
对于 Linux 终端来说,命令的威力是无与伦比的。但有时您需要多次键入冗长的命令才能完成任务。重新输入此类命令是不可行的,并且可能是一个艰苦的过程。因此,在本文中,我们将演示如何查看和管理Linux命令历史记录。
如何在 Linux 中查看命令历史记录
在Linux中,我们使用history命令来查看之前执行过的所有命令的列表。它有一个非常简单的语法:
history <options>
与历史命令配对的一些选项是:
选项 | 描述 |
---|---|
-C | 清除当前会话的命令历史记录 |
-w | 将命令历史记录写入文件 |
-r | 从历史文件中重新加载命令历史记录 |
-n <最大条目数> | 限制最近命令的输出数量 |
只需运行history命令即可查看Linux终端中所有先前执行过的命令的列表:
除了查看命令历史记录之外,您还可以管理命令历史记录并执行修改以前执行的命令、反向搜索命令历史记录甚至完全删除历史记录等操作。
如何修改之前执行的 Linux 命令
如前所述,您执行的每个命令都会存储在命令历史记录中。要修改或重用之前执行的命令,您可以使用以下任一步骤:-
使用命令历史扩展
感叹号“!” 与“事件指示符”配合使用时可以扩展 bash 历史记录。您可以使用的一些事件指示符是 –
- !! – 将最后执行的命令插入 shell 提示符中。
- !<n> – 将执行的第 n 个命令插入到 shell 提示符中。
- !<command> – 指最近执行的<command>。
- !?<string> – 指包含 <string> 的最新命令。
使用反向命令搜索
有时,滚动浏览数千个命令的整个列表来搜索特定命令是不可行的。为此,您可以使用“CTRL + r”进行反向命令搜索。它将打开一个新提示。在这里输入你要搜索的命令,就会显示之前执行过的完整命令。按键盘上的 Enter 键来执行命令。
如何在 Linux 中清除命令历史记录
要清除整个命令历史记录,请在 History 命令中使用 -c 标志。
history -c
如何在 Linux 中修改命令历史记录约束
基于一些限制,bash 命令历史记录会在 Linux 中相应保存。所有此类约束都存储为系统环境变量,并且可以像修改用户定义的环境变量一样进行修改。
限制存储的命令数量
要限制历史记录中存储的命令数量,请使用以下语法设置 HISTSIZE 环境变量 –
export HISTSIZE=<max_commands_to_store>
例如,仅存储最近的 1000 个命令 –
export HISTSIZE=1000
忽略特定命令
要排除在命令历史记录中保存的特定命令,请使用具有以下语法的 HISTIGNORE 环境变量 –
export HISTIGNORE=<command1:command2:command3>
这里,命令“command1”、“command2”和“command3”被设置为从bash命令历史记录中排除。例如,要排除命令 ls、cd 和 exit –
export HISTIGNORE='ls:cd:exit'