Problème boucle if script shell

Résolu
Bonjour à tous, j'ai réaliser un script permettant de réaliser un utilisateur mais j'obtiens une erreur sur la boucle if voici le code :

resultat=$(adduser $1 -G amis -s /bin/MySecureShell)

if["$resultat" != "0"] && ["$resultat" != "1"]; then
{
      instruction
}


Je n'ai pas mis la partie inscription qui marche parfaitement. Pouvez vous m'aider svp ? Merci d'avance.
Configuration: Linux
Firefox 3.5.5

12 réponses

  1. Oki pas de soucis ^^, merci pour l'aide que tu m'as apportés
    1. Contributeur
      question d'habitude : adduser exit result
      2ém résultat ;)

      Hésite pas si t'as besoin d'aide.
      1. Contributeur
        0 - normal, success 
        1 - password file is busy
        2 - interrupted
        3 - user already in passwd file
        4 - bad group specified
        5 - bad parent directory
        6 - error getting new uid
        7 - bad arguements (usage)
        8 - error from remote system  
        9 - error creating user files
        10 - error creating new passwd

        1. ben ouais je sais mais quand je fait echo $? il me sort 9 or d'après le man de adduser les valeurs de retour sont 0 et 1
          1. j'ai trouvé, juste parce qu'il fallait mettre un espace après le if, maintenant faut que je trouve le moyen de récupérer la valeur de retour
            1. Contributeur
              Perso je fonctionne comme ceci :

              if [ $? -eq 0 ] && [ $? -eq 1 ]; then
              {
                    echo "instruction"
              }
              fi


              1. j'ai bien fermer avec fi, mon but est de récupérer le résultat de la fonction pour savoir si l'utilisateur existe

                j'ai essayé ce code mais je reçoit aussi le même message d'erreur :

                adduser $1 -G amis -s /bin/MySecureShell
                
                if[ $?  !=  "0" ] && [ $? != "1" ]; then
                {
                      instruction
                }
                fi


                Message d'erreur : syntaxe error near unexpected token then
                `if[ $? != "0" ] && [ $? != "1" ]; then`

                Le pire c'est que je reçoit un 9 pour un utilisateur existant alors que d'après le man les valeurs de retous sont 0 et 1
                1. Contributeur
                  Quelle est l'erreur ?

                  Peut-être faut-il fermer le if avec un fi