Bonjour à tous,

Je suis en BTS IG option Réseau et j'ai concu un script qui permet l'ajout d'un utilisateur samba et l'ajout d'une machine samba, pour mon domaine samba.

Mais j'ai un problème sur mon script
EXPLICATION:
Lorsque je lance mon script le menu s'affiche, donc je peut choisir:
1-Créer un utilisateur samba
2-Créer une machine samba
3-Quitter

Si, par exemple je tape1, je peut créer un utilisateur cela fonctionne, et à la fin de cette création je propose d'en créer un nouveau (cela fonctionne), ou bien de retourner dans le menu (cela fonctionne).
Lorsque je retourne dans le menu, j'ai toujours les 3 choix.
Si je choisi de quitter (c'est OK), mais si je chois 1 ou 2 le menu boucle sur lui même, et je n'arrive plus à entrer dans les fonctions de création.

Voici mon script

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#! /bin/sh
 
###############################################################
function ajout_utilisateur ()
{
echo "saisir un nom d'utilisateur"
read user
c=0
if grep $user /etc/passwd 
	then
	c=1			
	echo "l'utilisateur $user est déjà  défini"
	echo ""
	else
	c=2
	echo "l'utilisateur $user n'est pas défini"
	echo ""
fi
 
if [ $c -eq 1 ]
	then
	echo "saisir le nouveau mot de passe de l'utilisateur $user"
	smbpasswd -a $user
	else
	useradd -m $user
	smbpasswd -a $user
fi
}
 
function ajout_machine ()
{
echo "saisir un nom de machine"
echo "ATTENTION: bien préciser le $ à  la fin du nom de la machine"
read machine
c=0
if grep $machine /etc/passwd
	then
	c=1
	echo "la machine est déjà  défini"
	else
 
	c=2
	echo "la machine n'est pas défini"
fi
if [ $c -eq 1 ]
	then
	echo ""
	smbpasswd -m -a $machine
	else
	useradd $machine
	smbpasswd -m -a $machine
fi
}
 
 
 
###############################################################
ok="o"
choix=0
while [ $choix -ne 3 ]
do
	echo "-------------------MENU---------------------"
	echo "Bienvenue dans la configuration SAMBA"
	echo "1- Créer un utilisateur"
	echo "2- Créer un compte machine"
	echo "3- Quitter le programme"
	echo ""
 
	echo "Faites votre choix:"
	read choix
	while [ $choix -eq 1 ] || [ $choix -eq 2 ] && [ $ok == "o" ]
	do
		if [ $choix -eq 1 ] && [ $ok == "o" ]
			then
			ajout_utilisateur
			echo "voulez-vous créer un nouvel utilisateur ? o/n"
			read ok
		fi
		if [ $choix -eq 2 ]
			then
			ajout_machine
			echo "voulez-vous créer une nouvelle machine ? o/n"
			read ok			
		fi
		if [ $choix -eq 3 ]
			then
			echo "fin du programme"
			ok="n"
		fi		
	done
done
J'espère ne pas être flou dans mes explications.

Merci à tous!!!!

A bientôt.