¿Cómo funciona el símbolo de la tecla sudo?

7

Estoy intentando escribir un script que solicita la contraseña de usuario para algunos comandos relacionados con sudo . Mi objetivo es emular el método predeterminado que utiliza OS X para obtener la contraseña del usuario, Password: seguido de un símbolo de clave, como se ve en la captura de pantalla adjunta a continuación:

Probélarespuestade Cómo obtenga una contraseña de un script de shell sin hacer eco sobre Stack Overflow que usa read -s , pero que da como resultado Password: sin el símbolo de clave cuando se ejecuta desde un script , pero muestra el símbolo cuando se ejecuta desde la propia Terminal. ¿Qué es este símbolo clave? ¿Puedo encontrarlo en el menú Caracteres?

    
pregunta perhapsmaybeharry 09.05.2016 - 10:28

3 respuestas

7

Obtengo el símbolo clave cuando ejecuto read -s en la Terminal.

Como esto parece funcionar igual para read -s que para sudo , asumo que esta es una característica de Terminal (para mostrar un símbolo clave cada vez que se solicita una entrada en modo silencioso / oculto).

    
respondido por el nohillside 09.05.2016 - 10:54
2

La respuesta más simple es escribir el script sin sudo

luego dile al usuario que lo ejecute con sudo, por ejemplo. sudo script

el script se ejecutará con privilegios de raíz

'Esto tiene la ventaja de que el usuario sabe lo que pide y dónde se usa la contraseña, si en su script podría estar tomando una copia o dejándola en la memoria

    
respondido por el Mark 09.05.2016 - 10:41
0

Creo que tiene algo que ver con si la opción de eco del terminal está deshabilitada. Intenté ejecutar stty -echo; cat; stty echo en mi terminal y luego escribir algo, y se mostró el símbolo clave. Luego presioné Ctrl + D y desapareció.

    
respondido por el Elias Zamaria 18.05.2016 - 18:34

Lea otras preguntas en las etiquetas