Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/04/2012, à 17:00

PowaBanga

Mot de passe et utilisation de if/fi

Bonjour,
je cherche à utiliser graphiquement le mot de passe, et de pouvoir continuer mon script en fonction de if fi...
Mais là je trouve vraiment rien qui me le permette sur le net... sad
Quelqu'un sait me sauver ?

Hors ligne

#2 Le 30/04/2012, à 17:11

Hizoka

Re : Mot de passe et utilisation de if/fi

remplace sudo par gksudo pour avoir une boite qui te demande ton mot de passe.


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#3 Le 01/05/2012, à 12:00

PowaBanga

Re : Mot de passe et utilisation de if/fi

oui ça je sais, mais dans tous les cas cette boit me répond 0 et mon script continue
elle ne répond jamais 1... :'(

Hors ligne

#4 Le 01/05/2012, à 12:14

pires57

Re : Mot de passe et utilisation de if/fi

on peut voir le script peut être?
A mon avis, le problème vient de la

Dernière modification par pires57 (Le 01/05/2012, à 12:14)


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#5 Le 01/05/2012, à 19:49

Hizoka

Re : Mot de passe et utilisation de if/fi

utilise zenity --password au pire.... mais surement moins securisé....

Sinon, on doit pouvoir verifier si on est en sudo, et tant que ce n'est pas le cas on boucle ou stoppe...

Genre la variable ${USER} ou ${SUDO_USER}....


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#6 Le 01/05/2012, à 20:29

PowaBanga

Re : Mot de passe et utilisation de if/fi

En fait le script n'est pas encore vraiment fait mais voici ce que j'ai essayé, y a des truc ça marche pas du tout, mais je montre quand même comme ça on me dira pas de le faire tongue
donc ça, ca marche pas , (un problème aves les chiffre et caractères spéciaux peut-être ?)

pass=`zenity --password --title="Password" --text="password"`
sudo gedit
$pass

et ça, dans tous les cas ça renvois 0

gksudo gedit

if [ "$?" -eq 1 ]; then
zenity --error \
--text="1= on arrête"
fi
if [ "$?" -eq 0 ]; then
zenity --error \
--text="0=on continue"
fi
if [ "$?" -eq -1 ]; then
zenity --error \
--text="-1"
fi

L'idée de vérifier le root m'intéresse, donc du coup je vien d'essayer en même temps que je tape ce message, et bref jme suis rendu compte que ceci me renvoi toujours la bulle avec "0=..." :
(au début j'avais "$USER" au lieu de "ddR")

gksudo echo $USER
if [ "$?" -eq 1 ]; then
zenity --error \
--text="1= on arrête"
elif [ "ddR" ]; then
zenity --error \
--text="0=on continue"
sudo gedit
else [ "$?" -eq -1 ]; then
zenity --error \
--text="-1"

Je suppose donc qu'il y a un truc louche dans mon bazar, du coup  j'ai réessayé avec les conseil d'hizoka, mais ca ne change rien, c'est toujours la seconde instance qui est prise en charge... :

gksudo echo $USER
if [ "$?" -eq 1 ]; then
zenity --error \
--text="1= on arrête"
elif [ "ddR" ]; then
zenity --error \
--text="0=on continue"
sudo gedit
else 
zenity --error \
--text="-1"
fi

Dernière modification par PowaBanga (Le 01/05/2012, à 20:30)

Hors ligne

#7 Le 01/05/2012, à 21:25

PowaBanga

Re : Mot de passe et utilisation de if/fi

C'est bon j'ai trouvé, en fait je me suis apperçu que je pouvais utiliser "echo $?" pour voir la réponse que m'envoyais le programe, donc j'ai essayé, et j'ai trouvé 255, 3 et 0 selon mes actes...
Bref je me retrouve avec 4 conditions, et du coup je me demande s'il n'y a pas un moyen pour que ca passe avec un truc genre if/elif/else parce que ça passe pas ça avec une 4iem condition...

gksudo echo "franckie" > $HOME/AAB
if [ "$?" -eq 255 ]; then
zenity --error \
--text="Vous avez cliqué sur 'annuler' "
fi
if [ "$?" -eq 3 ]; then
zenity --error \
--text="Le mot de passe est incorrect 
Pour avoir les droit, demandez..."
fi
if [ "$?" -eq 0 ]; then
zenity --error \
--text="Le mot de passe est correct, on continue"
fi
if [ "$?" -eq -1 ]; then
zenity --error \
--text="je ne sais pas ce qui pourrait causer ceci "

fi

Et avec les if/elif/else, je vous montre mais ca marche pas :

gksudo echo "franckie" > $HOME/AAB
if [ "$?" -eq 255 ]; then
zenity --error \
--text="Vous avez cliqué sur 'annuler' "
elif [ "$?" -eq 3 ]; then
zenity --error \
--text="Le mot de passe est incorrect 
Pour avoir les droit, demandez..."
fi
elif [ "$?" -eq 0 ]; then
zenity --error \
--text="Le mot de passe est correct, on continue"
else [ "$?" -eq 0 ]; then
zenity --error \
--text="je ne sais pas ce qui pourrait causer ceci "

fi

Hors ligne

#8 Le 01/05/2012, à 22:11

PowaBanga

Re : Mot de passe et utilisation de if/fi

hééé y a "pkexec" aussi pour demander le mot de passe via l'interface, et au moin celui là il est aussi sur KDE yikes
comment je peux faire pour créer un fichier texte ou bash en root avec ça ?

Parce que là si je veux que mon script soit compatible à KDE ca me fera un script dans ce style :

gksudo gedit
if [ "$?" -eq 255 ]; then
zenity --error \
--text="Vous avez cliqué sur 'annuler' "
fi
if [ "$?" -eq 3 ]; then
zenity --error \
--text="Le mot de passe est incorrect 
Pour avoir les droit, demandez..."
fi
if [ "$?" -eq 0 ]; then
zenity --error \
--text="Le mot de passe est correct, on continue"
fi
if [ "$?" -eq -1 ]; then
zenity --error \
--text="je ne sais pas ce qui pourrait causer ceci "
fi
if [ "$?" -eq 127 ]; then
kdesu gedit
               if [ "$?" -eq 255 ]; then  ####en espérant que se soient les mêmes chiffres####
                zenity --error \
               --text="Vous avez cliqué sur 'annuler' "
                fi
                if [ "$?" -eq 3 ]; then
               zenity --error \
              --text="Le mot de passe est incorrect 
               Pour avoir les droit, demandez..."
               fi
               fi
               if [ "$?" -eq 0 ]; then
               zenity --error \
               --text="Le mot de passe est correct, on continue"
               fi
              if [ "$?" -eq -1 ]; then
              zenity --error \
              --text="je ne sais pas ce qui pourrait causer ceci "
              fi
              if [ "$?" -eq 127 ]; then
              zenity --error \
              --text="    Il semblerait que les commandes 
             'gksudo' et 'kdesu' "
ne fonctionnent pas  sur cet ordinateur.
              fi

fi

Dernière modification par PowaBanga (Le 02/05/2012, à 00:37)

Hors ligne

#9 Le 02/05/2012, à 03:32

Hizoka

Re : Mot de passe et utilisation de if/fi

Tu veux faire quoi exactement là ?

ouvrir gedit en root et y coller automatiquement le texte ?

en console il faudrait faire

echo "tout le blabla" | sudo tee le_fichier_de_sortie

KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne