Bonjour,

Donc voilà j'ai ce code qui me pose problème plus précisément sur la partie du while. L'erreur que j'obtiens est, seulement lorsque je lance action "s" :
line 24: unexpeted EOF while looking for matching '`'
line 40: syntaxe error: unexpeted end of file
Je me doute que cela viens de mon EOF mais le problème c'est que dans ce fichier le EOF est un retour à la ligne et je ne sais comment l'indiquer.


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
#!/bin/sh
 
echo "Que voulez vous faire, (a)jouter des comptes ou (s)uprimer des comptes :";
read action;
echo $action;
if [ $action = "a" ]; then
	echo "Donner le nom du groupe :";
	read group2;
	echo "Donner le nom de l utilisateur :";
	read user2;
	groupadd $group2;
	useradd -g $group2 -d /dev/null -s /etc $user2;
	mkdir /$group2;
	mkdir /$group2/$user2;	
	pure-pw useradd $user2 -u $user2 -d /$group2/$user2;
	pure-pw mkdb;
fi
if [ $action = "s" ]; then
	echo "Donner le nom du groupe :";
	read group2;
	echo "Donner le nom de l utilisateur (all pour tout les user) :";
	read user2;
	if [ $user2 = "all" ]; then
		$gid2=$(grep ^$group2: /etc/group | grep -o [0-9][0-9]*');
		while IFS=: read user pass uid gid full home shell;
		do
			if [ $gid = $gid2 ]; then
				userdel -r -f $user;
				pure-pw userdel $user;
				pure-pw mkdb;
			fi
		done < /etc/passwd
	else
		userdel $user2;
		pure-pw userdel $user2;
		groupdel $group2;
		pure-pw mkdb;
	fi
fi
Merci d'vance pour reponses.

PS: ce script est lancé sur une debian 4.0r5