[Shell] Boucle si mot de passe su incorrect

Résolu/Fermé
Koozag Messages postés 391 Date d'inscription jeudi 3 juillet 2008 Statut Membre Dernière intervention 31 janvier 2013 - 25 janv. 2010 à 10:56
Koozag Messages postés 391 Date d'inscription jeudi 3 juillet 2008 Statut Membre Dernière intervention 31 janvier 2013 - 25 janv. 2010 à 13:39
Bonjour,
je suis en train d'effectuer un script pour une automatisation de la mise à jour de base de signatures antivirus.

Le but est que les utilisateurs n'effectue que le minimum d'actions. A un moment de mon script je dois effectuer une copie des fichiers, mais cela n'est possible qu'en tant que super utilisateur.

echo "Cette action ne peut se faire uniquement en tant que superutilisateur"
echo "Entrer le mot de passe"
# passage en mode superutilisateur et demande du mot de passe pour la copie des fichiers
su -c "cp $HOME/clamav/main.cvd /var/lib/clamav;cp $HOME/clamav/daily.cvd /var/lib/clamav"
echo "Copies correctement effectuées"


J'aimerais placer une boucle après le su
en gros cela donnerais :
su
BOUCLE
demande mdp
si ok on exécute la copie
sinon on remonte et on redemande le motdepasse
FIN BOUCLE

Voila je débute en SHELL et j'avoue que sur les documentations présentes sur internet, je n'ai rien trouvé d'intéressant.

Merci d'avance
A voir également:

4 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
25 janv. 2010 à 12:20
Salut,

#! /bin/sh

#set -xv

while :
do
su -c '/sbin/fdisk -l' && break || continue
done

;-))
1
Koozag Messages postés 391 Date d'inscription jeudi 3 juillet 2008 Statut Membre Dernière intervention 31 janvier 2013 50
25 janv. 2010 à 13:04
C'est parfait, tout fonctionne nickel !!
Merci beaucoup pour la réponse (parfaite) et la rapidité !

:)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
25 janv. 2010 à 13:27
De rien ;-))

Par contre si la copie échoue, on ne sort pas de la boucle, le mot de passe sera redemandé et la commande exécutée à nouveau ;-(
0
Koozag Messages postés 391 Date d'inscription jeudi 3 juillet 2008 Statut Membre Dernière intervention 31 janvier 2013 50
25 janv. 2010 à 13:39
D'accord, mais c'est une copie de base qui n'échouera surement jamais ;)
Encore merci, c'est parfait =)
0