在Linux中,要查看历史命令列表以访问之前的内容,你可以使用history
命令。这个命令会显示你当前shell会话(或者,如果你指定了参数,可能是所有会话)中执行过的命令列表。
基本用法
- 简单地输入
history
并按下回车键,将会显示当前shell会话中执行过的命令列表。
- 你可以通过管道(
|
)将history
命令的输出传递给其他命令,比如less
或grep
,来进行搜索或分页查看。
|
history | less |
|
# 或者 |
|
history | grep "某个关键词" |
使用选项
-
-c
选项用于清除当前shell会话的历史记录。注意,这不会删除已经保存在历史文件中的记录(如果shell配置为保存历史记录到文件的话)。
-
-d OFFSET
选项用于删除历史列表中指定偏移量(从0开始计数)的命令。
|
history -d 100 |
|
# 这会删除历史列表中第101条命令(因为计数是从0开始的) |
-
-n
选项用于从指定的历史文件中读取新的命令并追加到历史列表中。这在你重启了shell会话但想保留之前的命令历史时很有用。
-
-r
选项用于从历史文件中读取整个历史列表,覆盖当前的历史列表。这在你意外清除了当前会话的历史记录,但想从文件中恢复时很有用。
-
-w
选项用于将当前的历史列表写入到历史文件中。这在你想要确保所有最近的命令都被保存到文件中时很有用。
注意
- 历史命令的保存和读取行为可能会受到你的shell配置(比如bash的
~/.bash_history
文件和HISTFILE
、HISTSIZE
、HISTFILESIZE
等环境变量)的影响。
- 默认情况下,
history
命令可能不会显示时间戳。如果你希望显示时间戳,可以在你的shell配置文件中(比如~/.bashrc
对于bash用户)设置HISTTIMEFORMAT
环境变量。例如:
|
export HISTTIMEFORMAT="%F %T " |
这会将时间戳设置为“年-月-日 时:分:秒”的格式。然后,当你运行history
命令时,每条命令旁边都会显示执行的时间。