[Probleme] shell -- unamary operator expected
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" :
Citation:
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:
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