su usuario ejecuta el comando como root


1

Fondo corto:

cuando se ejecuta un script que utiliza notify-send "title" "message", se espera que muestre una notificación, pero sudo ./script no muestra notificación

Después de leer y visitar muchas páginas, encontré que ejecutar esta parte (notificar-enviar parte) de mi script aún podría notificar al usuario.

Problema:

Así probando este comando su:

su normal-user -c "echo $USER"
root

¿Por qué esto no está volviendo? normal-user

Respuestas:


4

La variable $ USER se expande en el momento en que ingresa el comando no después de ejecutar su. su normal-user -c 'echo $USER' dará los resultados esperados. Las comillas simples significan que $ USER no se expandirá hasta después del su.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.