¿Qué significa el comando "sudo!"

49

Vi el comando

sudo !!

en un video

¿Qué significa esto?

mko
fuente
10
Ejecute el comando anterior con sudo.
The Pixel Developer
Relacionados .
Dennis Williamson
3
@ jmort253: SU, etc., pretende ser la fuente de todo conocimiento. Google es simplemente el motor de búsqueda que lleva aquí. No hacemos RTFM excepto como complemento de una respuesta utilizable.
Dennis Williamson
Además, hay suficiente documentación sobre una distribución de Linux. Aprende a usar comandos como infoy man. Si los tiene instalados, man COMMANDle dará información sobre lo que le gusta al comando man sudo. Si no lo tiene instalado, instale apt-file con, sudo apt-get install apt-fileentonces puede buscar con apt-file qué paquete contiene el comando man (si está utilizando debian o derivado de debian).
Darokthar
99
¡Significa Sudo con venganza ! Si dos máquinas están cerca (2-3 pulgadas), puede ejecutar comandos en la otra máquina con esto. Es así de fuerte.
Pekka apoya a GoFundMonica

Respuestas:

60

Del manual de bash :

9.3.1 Designadores de eventos

!!- Consulte el comando anterior. Este es un sinónimo de '! -1'.

Y de la sudopágina del manual :

sudopermite a un usuario permitido ejecutar un comando como superusuario u otro usuario, como se especifica en el archivo sudoers .

Entonces, sudo !!significa ejecutar el comando anterior como superusuario.

Carl Norum
fuente
55
Felicitaciones por la única respuesta que realmente responde la pregunta.
Daniel Beck
1
Para enfatizar esto: !! es una función histórica del shell, y de ninguna manera está vinculada a sudo. Puede usarlo en todas partes donde tenga sentido.
Usuario desconocido
Gracias por contar, ¿obtienes la parte "superusuario"?
Ja5087
10

El doble signo de exclamación "!!" se usa para recuperar la última línea ingresada en un shell. sudoes la abreviatura de "Super User DO" y se utiliza cuando desea ejecutar una función con privilegios de superusuario.

Entonces si ejecuté

./foobar

pero luego recordé que necesitaba privilegios de superusuario, uno simplemente podía escribir

sudo !!

en lugar de escribir sudo ./foobartodo el camino. Esto es particularmente útil cuando su último comando estaba en el orden de docenas de caracteres.

Melocotones491
fuente
Eso no es exacto. De Wikipedia (citando buenas referencias): Originalmente significaba "superusuario do", ya que las versiones anteriores de sudo estaban diseñadas para ejecutar comandos solo como superusuario. Sin embargo, las versiones posteriores agregaron soporte para ejecutar comandos no solo como superusuario sino también como otros usuarios (restringidos), y por lo tanto también se expande comúnmente como "usuario sustituto". .
Pablo A