Sudo не запрашивает пароли, если NOPASSWD не работает

Есть несколько вариантов ; <команда2>; поэтому разделяйте команды точкой с запятой, тогда следующая команда будет выполнена после предыдущего завершения.

Второй вариант - разделить с помощью && && && , тогда следующая команда будет выполнена после успешного завершения предыдущей.

Следующий вариант - написать сценарий bash, но в вашем случае вы должны написать сценарий, начиная с:

#! / Bin / bash <выполнить первую команду> <выполнить вторая команда> <выполнить третью команду>

1
30.06.2017, 01:51
1 ответ

Вы можете спросить sudo -l. Он возвращает либо полный путь к выполняемой команде, либо завершается с нулевым статусом, отличным от -. Здесь мы игнорируем вывод и проверяем возврат статуса:

if sudo -l somecommand... >/dev/null
then
    echo "This is permitted" >&2
else
    echo "You are out of luck today" >&2
fi
1
27.01.2020, 23:45

Теги

Похожие вопросы