在 Linux 系统中,我们可以使用 history
命令来查看之前执行过的命令。当我们运行 history
命令时,系统会显示出一个编号和相应的命令列表。例如:
$ history
1 ls -l
2 cd /etc
3 cat /etc/passwd
4 history
这表示我们依次执行 ls -l
、cd /etc
、cat /etc/passwd
和 history
命令。
除使用 history
命令,我们还可以使用 !n
来重复执行编号为 n
的命令。例如:
$ !3
cat /etc/passwd
这将再次执行编号为 3 的命令 cat /etc/passwd
。
除查看全部的命令执行历史之外,有时我们也需要查看最近运行的几个命令。在 Linux 中,我们可以使用 HISTTIMEFORMAT
环境变量来控制命令执行历史的显示格式。例如:
$ export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "
$ history 5
1 2023-04-18 14:23:45 ls -l
2 2023-04-18 14:24:01 cd /etc
3 2023-04-18 14:24:15 cat /etc/passwd
4 2023-04-18 14:24:22 history
5 2023-04-18 14:24:27 export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "
这样我们就可以看到最近 5 条命令的执行时间。我们只想查看最近运行的几个命令,可以使用 history
命令后跟一个数字参数,比如 history 5
就会显示最近运行的 5 条命令。
除查看命令执行历史之外,我们还可以对其进行管理,比如调整历史记录的数量、清除历史记录等。
我们可以通过设置 HISTSIZE
环境变量来控制历史记录的数量。例如:
$ export HISTSIZE=1000
这样就将历史记录的数量设置为 1000 条。
另外,我们可以使用 history -c
命令来清除所有的历史记录。需要注意的是,这个命令只是清除内存中的历史记录,并不会删除历史记录文件(通常是 ~/.bash_history
)。要永久删除历史记录,需要手动删除这个文件。
了解如何查看和管理 Linux 命令执行历史是一项非常有用的技能。通过熟练掌握这些技巧,我们可以更高效地使用 Linux 系统,并更好地记录和回顾自己的工作过程。