Linux下的history命令其实很强大
发布网友
发布时间:2024-10-24 14:00
我来回答
共1个回答
热心网友
时间:2024-11-09 18:30
在Linux系统中,若回忆不起先前执行过的命令,此时不妨尝试使用history命令。history命令具备强大功能,不仅能够展示指定数量的指令,还能读取历史命令文件中的内容至缓冲区,同时将缓冲区内容写回命令文件。
要查看历史命令列表,请在终端中输入:
$ history
这将展示自会话开始以来输入的所有命令。例如:
1 clear 2 ls -al 3 sudo dnf update -y 4 history
$ history 10
这里则显示了最后10条命令。
想要执行历史中的某条命令,只需在命令前添加一个感叹号“!”,例如执行历史列表中的第3条命令(即ls -al):
$ !3
同样,使用以下指令可以快速执行历史命令:
!sudo dnf //history 将搜索并重新执行与输入相匹配的最近一条命令
!! //执行历史命令中的最后一条命令
历史命令还能与grep、tail等命令配合使用进行条件过滤,如:
$ history | grep dnf 3 sudo dnf update -y 5 history | grep dnf $ history | tail -n 3
使用ctrl+r进行命令历史记录的递归搜索,输入后提示变为:
(reverse-i-search)`':
输入命令后,即可显示匹配的命令,按回车键执行。
历史命令还能允许使用不同语法重新运行命令,例如,更改已执行命令(history | grep dnf)为(history | grep ssh),执行如下命令:
$^dnf^ssh^
历史命令将dnf替换为ssh,并重新执行。
如果需要删除某些或全部历史记录,所有的命令历史记录存储在每个用户宿主目录下的.bash_history文件中,该文件可以进行编辑。
历史命令除了上述功能,还可以进行个性化设置,有兴趣的话可自行研究,相信能帮助你更深入理解和使用此命令。