📜  从历史 ubuntu 运行命令 - Shell-Bash (1)

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

从历史 Ubuntu 运行命令 - Shell-Bash

在 Ubuntu 系统中,我们可以使用 Bash Shell 来执行各种命令和操作。Bash Shell 不仅提供了强大的命令行工具和脚本语言,还允许我们访问之前执行的命令和操作的历史记录。在本文中,我们将介绍如何从历史记录中检索和重新运行之前执行的命令。

1. 查看历史记录

我们可以使用 history 命令来查看之前执行的命令的历史记录。该命令会显示一个包含所有历史记录的列表,每个命令占据一行,并以相应的编号开始。

$ history
     1  ls
     2  cd Desktop/
     3  touch testfile.txt
     4  nano testfile.txt
     5  echo "Hello world"
     6  history

我们可以使用 -c 参数来清除所有历史记录。

$ history -c
2. 检索历史记录

我们可以使用 ! 命令来检索之前执行的命令的历史记录。! 后跟随命令的编号,就可以重新运行该命令。

$ !1
ls

我们还可以使用 !! 命令来重新运行刚刚执行的命令。

$ echo "Hello world"
Hello world
$ !!
Hello world

如果没有指定编号,! 命令会默认重新运行最后一条命令。

$ echo "Hello world"
Hello world
$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
$ !
ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

除了 ! 命令之外,我们还可以使用 ctrl+r 快捷键来进行历史记录的搜索。按下 ctrl+r 后,我们只需输入要搜索的命令的关键字,即可找到并重新运行该命令。

(reverse-i-search)`ls': ls
3. 从历史记录中执行命令

我们可以使用 !!!-N!string 命令来从历史记录中执行命令。

!! 命令会重新运行上一条命令。

$ echo "Hello world"
Hello world
$ !!
Hello world

!-N 命令会重新运行从当前命令倒数第 N 条命令。

$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
$ !-2
echo "Hello world"
Hello world

!string 命令会重新运行最后一条以指定字符串开头的命令。

$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
$ !ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
4. 结论

在本文中,我们讨论了如何从历史记录中检索和重新运行之前执行的命令。了解这些命令可以帮助我们更有效地管理 Shell 命令,并提高命令行工作效率。