Comme dit dans le titre, je dois vérifier si le mot de passe sudo a été entré pour cette session de terminal dans un shell (aka, si j'ai maintenant les droits sudo).
Si je l'ai, je voudrais faire une chose et si je ne l'ai pas, alors cela ne devrait pas me le demander, laissez-moi simplement faire autre chose.
Donc, dans le pseudo code, cela ressemble à ceci:
if (sudo = true)
echo "i got sudo"
else
echo "i dont have sudo"
fi
Mais toutes les commandes que j'ai trouvées pour cela m'invitent toujours à saisir le mot de passe sudo lors de la vérification.
L'idée de base est que le script peut (et demandera) le mot de passe sudo à plusieurs endroits, mais je ne veux pas imprimer "Le script demandera maintenant votre mot de passe sudo." s'il a déjà été entré (ce qui signifie qu'il ne demandera pas le mot de passe sudo).
J'espère que quelqu'un pourra m'aider.
la source
if sudo -n true 2>/dev/null; then
mail_badpass
est activé dans sudoers.