Следующий сценарий работает через командную строку, файл рабочего стола или дважды щелкнет, запрашивает пароль только один раз, а шаблон команды sudo -Sp '' <your command here> <<<${sudo_password} можно использовать несколько раз в любом месте файла:
# get sudo password
sudo_password=$( gksudo --print-pass --message="Provide permission to make system changes: Type your password or press Cancel." -- : 2>/dev/null )
# check for null entry or cancellation
if [[ ${?} != 0 || -z ${sudo_password} ]]
then
exit 4
fi
if ! sudo -kSp '' [ 1 ] <<<${sudo_password} 2>/dev/null
then
exit 4
fi
# command
sudo -Sp '' gedit "/etc/hosts" <<<${sudo_password}