Problème avec mon script shell?

phplover Messages postés 26 Statut Membre -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
j'ai un ptit problème vec mon script
ça affiche le menu et une fois j'écris mon choix elle me donne la phrase à afficher par défaut erreur et termine le script ? que dois-je faire???
merci d'avance


1*) echo ' saisir le nom d'utilisateur à créer'
read $useraj
useradd $useraj
echo ' l'utilisateur $useraj a été crée avec le mot de passe $pass .'
;;
2*)
echo 'saisir le nom d'utilisateur à supprimer'
read $usersup
userdel $usersup
echo ' l'utilisateur $usersup a été supprimé.'
;;
3*)
var=$ (who)
echo 'les utilisateurs connectés sont $var'
;;
4*)
exit
;;
*)
echo 'erreur'
;;
esac

1 réponse

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    Plein d'erreur dans ta syntaxe bash ;-((

    echo ' saisir le nom d'utilisateur à créer'
    echo ' l'utilisateur $useraj a été crée avec le mot de passe $pass .'


    Si tu emploies des quotes simples pour l'affichage, il faut penser à protéger les quotes contenues dans ta phrase, ou mieux utiliser des quotes doubles, ce qui aura l'avantage de pouvoir interpréter les éventuelles variables qui s'y trouvent, donc :

    echo  "saisir le nom d'utilisateur à créer"
    echo "l'utilisateur $useraj a été crée avec le mot de passe $pass ."


    read $useraj
    Pas de signe dollar pour déclarer des variables, uniquement pour leur utilisation par la suite :

    read useraj
    echo "${useraj}"

    L'utilisation des accolades autour des variables est une bonne habitude à prendre...
    0