📜  Linux Shell历史记录命令(1)

📅  最后修改于: 2023-12-03 15:32:40.608000             🧑  作者: Mango

Linux Shell历史记录命令

在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”可以运行第n条命令,比如:

$ !3  # 运行第3条命令,这里是vim README.md 
!string

使用“!string”可以运行最近的一条以string开头的命令,比如:

$ ls -a
$ !ls  # 运行最近的一条以ls开头的命令,这里是ls -a
^string1^string2

使用“^string1^string2”将上一次命令中的string1替换为string2并运行,比如:

$ ls -a
$ ^ls^ll  # 将上一次命令中出现的ls替换为ll并执行,等同于ll -a
!-n

使用“!-n”可以运行倒数第n条命令,比如:

$ !-2  # 运行倒数第二条命令
历史记录命令的配置

可以通过修改环境变量HISTFILESIZE和HISTSIZE来修改历史记录的保存数量。比如:

$ export HISTSIZE=1000  # 修改历史记录的保存数量为1000条

可以在~/.bashrc文件中添加上述命令来使修改永久生效。此外,还可以通过添加忽略某些命令的规则来精简历史记录,比如:

$ export HISTIGNORE="ls:ll:history"  # 忽略命令ls、ll和history,不将其保存到历史记录中

以上便是Linux Shell历史记录命令的介绍,希望可以帮助你更好地利用Shell,提高工作效率。