Tengo un script que me da un control preciso sobre el brillo de la retroiluminación y requiere sudoejecutarlo. Es esencialmente esto:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | tee $backlight
y vive en ~/bin/backlight-adjust. El script necesita sudoprivilegios, porque tee $backlightestá escribiendo en una ubicación privilegiada. Por lo tanto, fallará si no se ejecuta con sudo.
Este enfoque tiene un problema, porque no puedo simplemente ejecutarlo sudo backlight-adjust, porque ~/binno está $PATHen el sudoentorno, solo en mi entorno. Entonces tendría que correr sudo env "PATH=$PATH" backlight-adjusto algo similar.
Alternativamente, podría haberlo escrito así:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | sudo tee $backlight
y me pide la contraseña.
El segundo enfoque funciona mejor para mí porque no tengo que recordar escribir sudo; me avisará Y puedo mantener mi $PATHintacto. Esto se siente más conveniente en general, pero ¿hay alguna razón por la que no debería hacerlo de la segunda manera?
(Estoy ejecutando Xubuntu 14.04 y mi shell es GNU bash 4.2.45, si eso hace la diferencia).
sudorealmente mantiene mi$PATHpor defecto, así que no tengo este problema.