📅  最后修改于: 2023-12-03 15:32:40.608000             🧑  作者: Mango
在Linux Shell中,可以使用历史记录命令来查看你之前运行的命令记录。使用历史记录命令可以方便地进行重复操作,提高工作效率。
在Linux Shell中,默认保存最近的500条命令历史记录。你可以通过命令“history”来显示所有的历史记录。下面是一个例子:
$ history
1 ls -a
2 cd Documents/
3 vim README.md
4 cd ..
5 ls
6 git status
7 git add .
8 git commit -m "update README.md"
9 git push origin master
10 history
可以看到,history命令输出了之前所有输入的命令(包括编号)。如果想只显示最近的若干行历史记录,需加上参数“-n”,比如:
$ history -5
6 git status
7 git add .
8 git commit -m "update README.md"
9 git push origin master
10 history -5
这样就可以只显示最近的5条历史记录了。
使用“!!”可以运行上一条命令,比如:
$ which python
/usr/bin/python
$ sudo !! # 运行上一条命令,这里是sudo /usr/bin/python
使用“!n”可以运行第n条命令,比如:
$ !3 # 运行第3条命令,这里是vim README.md
使用“!string”可以运行最近的一条以string开头的命令,比如:
$ ls -a
$ !ls # 运行最近的一条以ls开头的命令,这里是ls -a
使用“^string1^string2”将上一次命令中的string1替换为string2并运行,比如:
$ ls -a
$ ^ls^ll # 将上一次命令中出现的ls替换为ll并执行,等同于ll -a
使用“!-n”可以运行倒数第n条命令,比如:
$ !-2 # 运行倒数第二条命令
可以通过修改环境变量HISTFILESIZE和HISTSIZE来修改历史记录的保存数量。比如:
$ export HISTSIZE=1000 # 修改历史记录的保存数量为1000条
可以在~/.bashrc文件中添加上述命令来使修改永久生效。此外,还可以通过添加忽略某些命令的规则来精简历史记录,比如:
$ export HISTIGNORE="ls:ll:history" # 忽略命令ls、ll和history,不将其保存到历史记录中
以上便是Linux Shell历史记录命令的介绍,希望可以帮助你更好地利用Shell,提高工作效率。