Linux历史记录命令及其使用方法?
在本系列文章中,我们已经学习了许多命令及其不同的语法和选项,要记住每一个命令是非常非常困难的。
今天,我们将学习一个命令,它可以让我们查看之前使用过的所有命令,并再次使用它们。
从标题来看,你应该已经猜到这条命令是什么了吧?
这是history命令!!
我们首先要问的问题是,命令有什么用history?
该history命令用于查看所有先前执行过的命令。
为什么我们需要 history 命令?
历史记录的主要用途是找到已经执行过的命令并再次使用它。
它还可以用于审计目的,或者用于查找在特定日期和时间执行了什么命令。
现在,事不宜迟,让我们开始吧。
- 要获取我们之前执行过的所有命令。
要使用该history命令,只需输入 history 并按回车键即可。
按下回车键后,我们就能得到所有命令的列表。
默认情况下,bash 过去会在历史记录中存储大约500 条命令,但如今限制已增加到1000 条命令。
为了使命令滚动更容易一些,我们可以将该history命令与该less命令一起使用,即history | less。
但是,如果我们只想找到最后 10 条命令呢?
- 列出我们执行的最后 10 条命令。
在上面的例子中,我们使用了命令history以及我们想要查看的命令数量。
注意:上述语法在zshhistory {number}中不起作用,因为在zsh中,是 的别名,所以当你这样做时,它会被替换为 ,这根本行不通,所以应该直接使用:。historyfc -l 1history 10fc -l 1 -10fcfc -l -10
那么,如果我们想把它们和时间一起列出来呢?
在上面的例子中,我们首先使用命令$ HISTTIMEFORMAT="%d/%m/%y %T "来设置时间格式为日/月/年时间戳。
设置好格式后,我们使用该命令history来获得所需的结果。
注意:对于zsh,我们只需使用history -i即可获得相同的结果。
如果我们想查找使用某个特定命令的所有历史记录,该怎么办?
在上面的例子中,我们使用该命令来获取我们使用该命令的history| grep man所有次数。man
到目前为止,我们已经了解了获取命令的不同方法。
但如果我们想使用这些命令呢?
首先,如果我们查看历史记录后发现想要使用的命令的序列号是 x,我们该如何使用它?
那么,让我们看看如何使用历史记录中的命令。
- 使用序列号1343的命令
在上面的例子中,我们过去常常!1343在相应的序列号处执行命令。
但如果我们输入了错误的序列号,就会给我们带来很多麻烦。
有什么办法可以阻止这种情况发生吗?
我们举个例子来看看如何防止这种情况发生。
在上面的例子中,我们首先使用了!1343:p返回指定数字的命令,经过验证后,我们就可以执行该命令了。
历史还提供另一种功能,称为历史扩展。
历史记录扩展功能允许在历史记录列表中调用和编辑命令。调用命令的方法是使用事件指示符。
| 命令 | 描述 |
|---|---|
| !! | 它指的是最后一个命令 |
| !-n | 它将执行当前数字 -n 命令 |
| !细绳 | 它将执行从输入字符串开始的、引用最近一次命令的命令。 |
| !?细绳 | 它将执行以输入字符串结尾的最新命令。 |
| ^字符串1^字符串2 | 重复上一个命令,将 string1 替换为 string2。 |
我们也可以使用它!!来执行最后一个命令,但我们很少会使用它,因为我们可以轻松地使用up按键代替。
让我们举几个例子来更好地理解。
- 找到最后
cat执行的命令并运行它。
- 找到对“Hello.txt”执行的最后一个命令,然后再次执行该命令。
同样,我们也可以使用其他历史扩展。
所以,以上就是关于“历史”这个关键词以及如何使用它的全部内容。
希望您能理解,如有任何问题或建议,请在下方留言。
报纸上见 :)
文章来源:https://dev.to/yashsugandh/history-command-and-how-to-use-it-37k8







