运行在最近一次执行之前执行的命令的命令?

时间:2016-07-22 12:39:18

标签: linux bash unix

在bash中,要运行您使用的最新命令,您可以按键盘上的向上箭头键并按Enter或键入!!并按Enter。但是,是否有一个命令可用于运行在最近的命令之前执行的命令?例如:

$ pwd
/home/john
$ ls
bin      Documents  Music   Pictures  Templates
Desktop  Downloads  output  Public    Videos

键入!!并按Enter将再次运行ls命令。但是,是否有类似于!!命令的东西可以让你以相同的方式运行pwd命令?如果有的话,请提供一些更详细的信息。

3 个答案:

答案 0 :(得分:2)

您可以使用!n,其中n是您的历史记录中的行号。要获得倒数第二个命令,您可以使用!-2

答案 1 :(得分:0)

您可以使用此处提到的!-2。除了向上箭头,您还可以使用ctrl-p循环回历史记录,使用ctrl-n转发。您也可以使用ctrl-r并反向搜索您已输入的命令。

答案 2 :(得分:0)

你还记得上次执行的命令的开头字符吗? 您可以通过使用!

指定命令的开头字符来执行它 从你的问题

再次执行ls,使用!l , 和!p !pw 执行pwd命令。但它只执行最后执行的命令。