在 Linux 中,如果你使用终端操作系统(sh、bash、zsh、fish等),那么有一个非常强大且方便的命令叫做 history
。它的作用是让你查看之前终端中输入的所有命令记录,以及可以方便地快速重复执行某个命令或修改一些参数后重新执行。下面我们来看一下Linux history常用命令:
1、Linux history查看所有历史命令列表
在使用终端时,我们常常会输入很长的命令,但有时候我们需要再次执行类似的命令,则可以使用在bash或zsh终端中 history
命令来查看之前输入过的命令。在终端中输入如下命令即可查看历史命令列表:
history
这个命令可以显示出先前输入到终端的最近 500 条命令记录,每条命令都有对应的编号,编号从 1 开始递增。
2、查看特定Linux命令的历史记录
如果需要查看特定命令的历史记录,可以使用 history
命令和grep命令组合使用,例如:
history | grep "ls"
这个命令将会输出之前输入过的所有包含 “ls” 的命令记录,包括 ls
、 ls -l
和 ls /etc
等命令。
3、使用 history 重复执行命令
在终端中执行命令时,我们可能需要多次执行先前使用过的命令。而使用 history
命令可以方便地找到之前的命令,并重复执行。
例如,想要再次执行编号为 42 的命令,可以使用如下命令:
!42
此外,还可以使用叹号 (!) 快速操作历史记录中的命令,例如:
-
!!
重复执行上一条命令 -
!-2
重复执行倒数第二条命令 -
!n
重复执行第 n 条命令,例如!3
表示重复执行第 3 条命令 -
!string
重复执行最近的一条以 string 开头的命令
4、控制 history 记录的数量
默认情况下,history
命令会记录最近输入的 1000条命令,但是如果输入的命令数量非常大,这个数字可能并不能满足需求,因此可以通过设置 HISTSIZE
变量来扩大或缩小 history
记录的数量。
例如,以下命令将 history
记录的数量限制为 2000 条:
export HISTSIZE=2000
5、Linux history显示时间
除了命令号、命令内容之外,history
还可以将每条命令的时间戳记录下来。如果需要查看命令的执行时间,可以使用以下命令:
export HISTTIMEFORMAT="%F %T "
这个命令将在 history
输出时显示每个命令执行的日期和时间戳。
6、Linux clear history
清空 history
记录,当 history
记录变得庞大时,我们可能需要清空所有的历史记录,以节省硬盘空间或者数据隐私安全考虑。可以使用以下命令清空历史记录:
history -c
此命令将会彻底清空所有 history
记录。
7、linux history文件位置
在 Linux 系统中,history
命令记录的历史命令是保存在一个文件中的。这个文件通常被称为 “history 文件”,位于用户的主目录下。
对于大多数常见的 Linux 发行版,history 文件的默认位置是 ~/.bash_history
。其中 ~
表示用户的主目录,.bash_history
是隐藏文件,可以使用 ls -a
命令显示隐藏文件。
以 Bash 为例,当你在终端输入命令后,会将命令记录追加到 history 文件中。每次打开一个新的终端会话时,history
命令会读取该文件并将历史记录显示在终端上。
你可以使用文本编辑器打开 history 文件进行查看或编辑,例如:
vi ~/.bash_history
或者你也可以直接使用 cat
命令查看其内容:
cat ~/.bash_history
需要注意的是,历史记录文件可能只包含最近的一部分命令,因为它的大小受到历史记录数量的限制。
值得一提的是,不同的 shell 可能会使用不同的历史文件,比如 Zsh 使用 ~/.zsh_history
,Fish 使用 ~/.config/fish/fish_history
。但是在大多数常见的 Linux 发行版中,默认使用的是 Bash,并且对应的历史文件是 ~/.bash_history
。文章来源:https://www.toymoban.com/news/detail-764755.html
更多详细信息可以参考:
Linux下history命令用法详解文章来源地址https://www.toymoban.com/news/detail-764755.html
到了这里,关于Linux history 命令详解:如何查看、显示时间、清空、重复和控制历史记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!