Ich habe ein Skript, mit dem ich die Helligkeit der Hintergrundbeleuchtung genau steuern kann und sudodas ausgeführt werden muss. Es ist im Wesentlichen das:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | tee $backlight
und lebt bei ~/bin/backlight-adjust. Das Skript benötigt sudoBerechtigungen, da tee $backlightan einen privilegierten Speicherort geschrieben wird. Also wird es scheitern, wenn es nicht läuft sudo.
Dieser Ansatz hat ein Problem, weil ich nicht einfach laufen kann sudo backlight-adjust, weil ~/binnicht $PATHin der sudoUmgebung, sondern nur in meiner Umgebung. Also müsste ich rennen sudo env "PATH=$PATH" backlight-adjustoder so ähnlich.
Alternativ hätte ich es so schreiben können:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | sudo tee $backlight
und fordern Sie mich auf, das Passwort einzugeben.
Der zweite Ansatz funktioniert bei mir besser, da ich mich nicht daran erinnern muss, sudo einzugeben. es wird mich auffordern. Und ich kann meine $PATHintakt halten . Das fühlt sich insgesamt bequemer an, aber gibt es Gründe, warum ich es nicht auf die zweite Art tun sollte?
(Ich verwende Xubuntu 14.04 und meine Shell ist GNU Bash 4.2.45, wenn das einen Unterschied macht.)
sudohält eigentlich meine$PATHstandardmäßig so dass ich dieses Problem nicht haben.