📅  最后修改于: 2023-12-03 14:49:22.308000             🧑  作者: Mango
在Shell-Bash中,历史命令是一个非常有用的功能。它允许程序员访问以前执行过的命令,并可以重新运行它们。本文将介绍如何使用历史命令来重新运行代码,并提供一些代码片段来演示。
Shell-Bash中的历史命令可以使用感叹号(!)后跟一个数字来重新运行。这个数字代表历史中的命令编号。例如,要重新运行第5个命令,可以使用以下命令:
!5
这将重新运行第5个命令。
如果要重新运行上一条命令,可以使用双感叹号(!!)。这对于快速重复执行上一条命令非常有用。以下是一个示例:
!!
这将重新运行上一条命令。
如果要重新运行以特定字符串开头的命令,可以使用感叹号后跟字符串的方式。以下是一个示例:
!ls
这将重新运行以“ls”开头的最近命令。如果最近的命令不是以“ls”开头,则会引发“command not found”错误。
有时候我们可能只想更改上一条命令中的某个参数,并重新运行它。在这种情况下,可以使用“!$”来引用上一条命令的最后一个参数。以下是一个示例:
ls /path/to/some/directory
vi !$
这将首先运行“ls /path/to/some/directory”命令,然后使用“!$”将最后一个参数引用为“/path/to/some/directory”,并将其传递给“vi”命令。
如果要重新运行上一条命令之前的命令,可以使用“!-num”的形式。其中num是要引用的命令的数量。以下是一个示例:
!-2
这将重新运行上一条命令之前的第2条命令。
如果要重新运行以特定字符串开头的命令,并在运行之前打印出来,可以使用“!string:p”的形式。以下是一个示例:
!ls:p
这将重新运行以“ls”开头的最近命令,并在运行命令之前将其打印出来。
历史命令是Shell-Bash中一个非常有用的功能,可以帮助程序员快速重新运行以前执行过的命令。通过使用不同的历史命令形式,程序员可以更轻松地浏览、查找和重新运行他们需要的代码片段。希望本文提供的示例能帮助你更好地理解如何从历史中重新运行代码。