У меня есть скрипт, который дает мне детальный контроль над яркостью подсветки и требует sudoзапуска. Это по сути это:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | tee $backlight
и живет в ~/bin/backlight-adjust. Сценарию нужны sudoпривилегии, потому что tee $backlightон пишет в привилегированное местоположение. Так что он потерпит неудачу, если не будет работать с sudo.
У этого подхода есть проблема, потому что я не могу просто запустить sudo backlight-adjust, потому что ~/binего нет $PATHв sudoсреде, только в моей среде. Так что мне придется бежать sudo env "PATH=$PATH" backlight-adjustили что-то подобное.
В качестве альтернативы я мог бы написать это так:
backlight="/sys/class/backlight/acpi_video0/brightness"
echo $1 | sudo tee $backlight
и предложите мне пароль.
Второй подход работает лучше для меня, потому что я не должен помнить, чтобы напечатать sudo; это подскажет мне. И я могу сохранить свои $PATHнетронутыми. В целом это кажется более удобным, но есть ли причины, по которым я не должен делать это вторым способом?
(Я использую Xubuntu 14.04, а моя оболочка - GNU bash 4.2.45, если это имеет значение.)
sudoфактически сохраняет мой$PATHпо умолчанию, поэтому у меня нет этой проблемы.