如何在Linux中重新运行最后执行的命令?


在Unix系统上工作时,重新运行命令行中的命令是一项常规任务,我们都会遇到。在下面的文章中,我们将看到各种方法,这些方法可以帮助我们重新运行已经执行的命令,这有助于节省时间,并有助于轻松地推理更长的命令,而无需重新输入它们。

在了解如何重新执行之前的命令之前,让我们看看如何查看所有命令的列表。有一个名为history的命令,它列出了系统配置的特定时间段内所有执行的命令。以下是执行history命令并查看其结果的示例。

$ histrory

运行以上代码,我们将得到以下结果:

$ history
1 perl -v
2 sudo -apt update
3 cal
..
..
231 curl -s https://ipvigilante.com/122.175.62.177
232 curl -s https://ipvigilante.com/104.80.62.56
233 ls -l

向上和向下箭头键

在终端上,按向上和向下箭头键,我们可以反复访问已经执行的命令,重复按下这些键可以帮助我们循环遍历已经执行的所有命令,在它们之间向前和向后移动。

使用 !!

此命令仅执行上一个命令。

$ !!

运行以上代码,我们将得到以下结果:

ls -l
total 60
drwxr-xr-x 2 ubuntu ubuntu 4096 Dec 13 19:35 Desktop
drwxr-xr-x 2 ubuntu ubuntu 4096 Dec 13 01:58 Documents
drwxr-xr-x 2 ubuntu ubuntu 4096 Dec 13 19:40 Downloads
……….
…………

! 与特定命令

如果您想执行特定命令,但只记得该命令的一部分,那么您可以使用 ! 与命令的一部分,则将执行完整的命令。

$ !nsloo

运行以上代码,我们将得到以下结果:

nslookup www.oracle.com
Server:127.0.1.1
Address:127.0.1.1#53
Non-authoritative answer:
www.oracle.comcanonical name = ds-www.oracle.com.edgekey.net.
ds-www.oracle.com.edgekey.netcanonical name = e870.dscx.akamaiedge.net.
Name:e870.dscx.akamaiedge.net
Address: 104.80.62.56

更新于:2020年1月3日

235 次浏览

启动您的职业生涯

通过完成课程获得认证

开始
广告