命令“ sudo !!”是什么意思?


49

我看到了命令

sudo !!

在视频中。

这是什么意思?


10
使用sudo运行上一个命令。
Pixel开发人员


3
@ jmort253:SU等意在成为所有知识的字体。Google只是在这里领先的搜索引擎。除了作为可用答案的补充之外,我们不会进行RTFM。
丹尼斯·威廉姆森

此外,在Linux发行版上有足够的文档。了解如何使用info和等命令man。如果安装了它们,man COMMAND将为您提供有关命令功能的信息man sudo。如果您没有安装apt-file,sudo apt-get install apt-file则可以使用apt-file搜索包含man命令的数据包(如果您使用的是debian或debian的衍生版本)。
2011年

9
这意味着苏多报仇!如果两台机器相距不远(2-3英寸),您实际上可以在另一台机器上运行命令。有那么强
Pekka支持GoFundMonica

Answers:


60

bash手册

9.3.1事件指示符

!!-请参考上一条命令。这是“!-1”的同义词。

sudo手册页

sudo允许允许的用户以超级用户或另一个用户的身份执行命令,如sudoers文件中所指定。

因此,sudo !!意味着以超级用户身份执行前面的命令。


5
恭喜您能真正回答问题的唯一答案。
丹尼尔·贝克

1
所以要强调这一点!是shell的历史功能,不以任何方式绑定到sudo。您可以在有意义的任何地方使用它。
用户未知

感谢您告诉我们,获得“超级用户”部分吗?
Ja5087 2011年

10

双感叹号“ !!” 用于调用进入外壳程序的最后一行。 sudo是“超级用户DO”的简写,当您要执行具有超级用户特权的功能时使用。

所以如果我执行

./foobar

但是后来我想起了我需要超级用户特权,只需输入

sudo !!

而不是sudo ./foobar一路打字。当您的最后一个命令是几十个字符时,此功能特别有用。


那是不正确的。摘自Wikipedia(引用了很多参考资料):它最初的意思是“超级用户”,因为sudo的较早版本旨在仅以超级用户身份运行命令。但是,更高版本增加了对运行命令的支持,不仅以超级用户身份,而且还以其他(受限制的)用户身份运行命令,因此,通常也将其扩展为“替代用户”。
Pablo A
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.