[Bash] Mot de passe & saut

Résolu/Fermé
Utilisateur anonyme - 30 déc. 2008 à 12:40
 Utilisateur anonyme - 30 déc. 2008 à 21:25
Bonjour a tous, voila, je suis (encore) bloqué avec les commandes UNIX.


Voila se que je voudrait :

- Le bash s'ouvre et demande si l'utilisateur veut cacher ou afficher le fichier.
- L'utilisateur choisis 1 pour le cacher et 2 pour le cacher.
- Si il tape 1, le fichier est caché
- Si il tape 2, le fichier est affiché

Sous DOS, je n'ai pas eu de soucis, mais sous UNIX, il n'y a pas de GOTO...


Voila mon code :

#!/bin/sh
ACCESS=H4RDW4RE
clear
echo
echo 1) Cacher le fichier
echo 2) Afficher le fichier
echo
read -p "Votre choix (1,2) : " VAR

if "$VAR"="1"
then {
clear
echo
read -p "Mot de passe : " MDP
if "$MDP"="$ACCESS"
then {
clear
echo
echo Acces Autorise
mv mon_fichier .mon_fichier
}
else {
clear
echo
echo Acces Refuse
exit
}

if "$VAR"="2"
then {
clear
echo
read -p "Mot de passe : " MDP
if "$MDP"="$ACCESS"
then {
clear
echo
echo Acces Autorise
mv .mon_fichier mon_fichier
}
else {
clear
echo
echo Acces Refuse
exit
}

fi

Si quelqu'un sait comment le modifier pour qu'il marche...

Merci d'avance

Cordialement

H4RDW4RE

2 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
30 déc. 2008 à 20:39
Salut,

Chose promise, chose due ;-))
#! /bin/sh

#set -xv

ACCESS=H4RDW4RE

fonction_MDP()
{
while :
do
clear
echo
read -p "Mot de passe : " MDP
if [ "$MDP" = "$ACCESS" ]
then
clear
echo
echo "Acces Autorise"
break
else
clear
echo
echo "Acces Refuse"
sleep 2
continue
fi
done
}

while :
do
clear
echo
echo "1) Cacher le fichier"
echo "2) Afficher le fichier"
echo "3) Quitter"
echo
read -p "Votre choix (1, 2 ou 3) : " VAR
echo

case $VAR in
1)	
fonction_MDP
echo "mv mon_fichier .mon_fichier"
sleep 3
continue
;;
2)
fonction_MDP
echo "mv .mon_fichier mon_fichier"
sleep 3
continue
;;
3)
echo "Bye bye"
break
;;
*)
echo "Mauvais choix"
continue 1
;;
esac
done
0
Utilisateur anonyme
30 déc. 2008 à 21:25
Merci beaucoup, il marche !!!

@+


0