J'ai piraté ensemble ce script bash qui teste si l'utilisateur a des privilèges de superutilisateur et s'ils ne le font pas, il les demande. En fin de compte, j'essaie d'inverser la deuxième instruction «if» afin de pouvoir supprimer les deux lignes suivantes (l'écho «mot de passe ok» et le reste sur la ligne suivante)
# Root user only
if [[ "$EUID" != 0 ]]; then
sudo -k # make sure to ask for password on next sudo
if sudo true; then
echo "Password ok"
else
echo "Aborting script"
exit 1
fi
fi
echo "do my ops"
Le but de "vrai" sur la quatrième ligne est-il simplement une déclaration nulle?
Je dois inverser le test sur la quatrième ligne, comment faire? Voici ce que j'ai essayé:
if sudo false; then
if sudo true == false; then
if [!(sudo true)]; then
echo "Aborting script" >&2