script de gestion d'user, fin de fichier prématurée - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 13-01-2011 à 21:38:57
j'ai oublié de preciser: c'est un live usb donc j'ai la possibilité de creer des user, group, etc et que ça reste donc je ne pense pas que le problème vienne de la?
edit: et j'ai deja essayé avec un "fi" a la fin, ça me mettais une erreur de syntaxe.
edit2: quelqu'un pourrais juste me dire si ça lui fait les mêmes erreurs chez lui siouplait?
Marsh Posté le 14-01-2011 à 07:41:40
Inutile de remonter ton topic s’il est toujours en 1ère page.
Merci.
Marsh Posté le 14-01-2011 à 09:03:40
T'es au courant qu'il y a des gens qui dorment ?
La politique est de ne pas remonter ton topic tant qu'il est en première page si tu n'y apportes pas d'information pertinente supplémentaire, peut importe l'urgence que tu accordes à ton problème, ici tout le monde est au même niveau.
Marsh Posté le 15-01-2011 à 16:24:54
ah je croyais que la modération avait fermée mon topic
Donc déja désolé pour le up, ça ne se reproduiras plus.
Merci pour le tuto aussi!
Finalement j'ai opté pour un case plutôt que les if/elseif, ce qui a réglé le problème.
edit: et quand je relis le script j'étais vraiment en train de craquer , j'avais laissé pleins de conneries dedans (genre le if ==1 4 fois ) même si ce n’était pas ce qui faisait bugger le script a priori.
Marsh Posté le 13-01-2011 à 21:12:07
Salut a tous, je tente de faire un script, qui ne marche pas vraiment
Je suis sous un live fedora 14, loggé en su pour tester le script
le script se compose d'un menu avec 4 choix, quand l'utilisateur tape 1,2,3 ou 4 sa lance des fonctions que j'ai définis, sinon ça lui dit choix incorrect.
Mais si je tente le choix 1 par ex il me dit "./user.sh: line 46: Erreur de syntaxe : fin de fichier prématurée"
donc mon script:
#!/bin/bash
user ()
{
read -p "Nom d'utilisateur" user
useradd $user
}
password ()
{
read -p "Nom d'utilisateur" user
passwd $user
}
group ()
{
read -p "Groupe d'utilisateur" group
groupadd $group
}
auto ()
{
read -p "nom d'utilisateur" user
useradd $user
passwd $user
read -p "Groupe d'utilisateur" group
groupadd $group
usermod -G $group $user
tail -1 /etc/passwd
tail -1 /etc/group
}
echo "Menu:
1-Creer utilisateur
2-Creer mot de passe
3-Creer groupe
4-Creer utilisateur de façon automatique"
read -p "Choix:" choix
echo $choix
if [ $choix == 1 ] [
user
] elseif [ $choix == 1 ] [
password
] elseif [ $choix == 1 ] [
group
] elseif [ $choix == 1 ] [
auto
] else [
echo "choix incorect"
]
c'est une des seules version qui ne me sorte pas "erreur de syntaxe près de ..."
J'ai déja essayé de remplacer les [] par des {} comme dans le man ça me mettais une erreur de syntaxe.
Quelqu'un pourrais m'expliquer ou je noobise?
merci d'avance
Message édité par woulf le 13-01-2011 à 21:41:39