IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Erreur de syntaxe : unexpected token 'else'


Sujet :

Shell et commandes GNU

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Na
    Inscrit en
    Mars 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Na

    Informations forums :
    Inscription : Mars 2014
    Messages : 22
    Points : 26
    Points
    26
    Par défaut Erreur de syntaxe : unexpected token 'else'
    Bonjour

    j'ai une erreur de syntax

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    line 6: syntax error near unexpected token `else'
    mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    echo "Installez pour l'utilisateur:"
    read user
    egrep "^$user" /etc/passwd >/dev/null
    if [ $? -eq 0 ]; then
    else
            echo "L'utilisateur n'existe pas!"
    fi

    merci

  2. #2
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 842
    Points
    7 842
    Par défaut
    Entre le then et le else, il faut mettre quelque chose:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    echo "Installez pour l'utilisateur:"
    read user
    egrep "^$user" /etc/passwd >/dev/null
    if [ $? -eq 0 ]; then
            :
    else
            echo "L'utilisateur n'existe pas!"
    fi
    ou mieux, supprimer le else en inversant le test:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    echo "Installez pour l'utilisateur:"
    read user
    egrep "^$user" /etc/passwd >/dev/null
    if [ $? -ne 0 ]; then
            echo "L'utilisateur n'existe pas!"
    fi
    ou encore mieux: supprimer le if aussi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo "Installez pour l'utilisateur:"
    read user
    egrep "^$user" /etc/passwd >/dev/null || echo "L'utilisateur n'existe pas!"

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Na
    Inscrit en
    Mars 2014
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Na

    Informations forums :
    Inscription : Mars 2014
    Messages : 22
    Points : 26
    Points
    26
    Par défaut
    Bonjour

    merci de votre aide cela a fonctionné mais n'est pas résolu et oui 2 erreur bizarre on afficher

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mkdir: impossible de créer le répertoire «*/home/darky/.autodl*»: Permission non accordée
    touch: impossible de faire un touch «*/home/darky/.autodl/autodl.cfg*»: Aucun fichier ou dossier de ce type
    P.S je suis en root ! lol pas supposer

    mon code complet

    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    rutorrent_dir=/var/www/rutorrent
    echo "Installez pour l'utilisateur:"
    read user
    egrep "^$user" /etc/passwd >/dev/null || echo "L'utilisateur n'existe pas!"
     
    echo "Entrer un port pour autodl-irssi"
        read -p  "entrer le port: " port
        echo "Entrer le mot de passe de autodl-irssi "
        read -p  "Mot de passe: " pw
     
    # gestionnaire de paquet
    if [ "`dpkg --status aptitude | grep Status:`" == "Status: install ok installed" ]
    then
            packetg="aptitude"
    else
            packetg="apt-get"
    fi
     
    $packetg update
    $packetg safe-upgrade -y
    $packetg install -y install libarchive-zip-perl libnet-ssleay-perl libhtml-parser-perl libxml-libxml-perl libdigest-sha-perl  libjson-perl libjson-xs-perl libxml-libxslt-perl
     
    ## svn autodl-irssi
    svn export https://svn.code.sf.net/p/autodl-irssi/code/trunk/src ~/.irssi/scripts
     
    ## Creation de dossier
    mkdir -p ~/.irssi ~/.irssi/scripts ~/.irssi/scripts/autorun
    su $user -c 'mkdir -p ~/.autodl'
     
    ## on change de répertoire
    cd ~/.irssi/scripts
     
    ## on copie autodl-irssi.pl
    cp autodl-irssi.pl autorun/
     
    su $user -c 'touch ~/.autodl/autodl.cfg'
     
    ##svn rutorrent plugins
    cd /$rutorrent_dir/plugins
    svn co https://svn.code.sf.net/p/autodl-irssi/code/trunk/rutorrent/autodl-irssi
     
    if [ -d "$rutorrent_dir/conf/users/$user/plugins" ]
    then
    	mkdir $rutorrent_dir/conf/users/$user/plugins/autodl-irssi
    else
    	mkdir $rutorrent_dir/conf/users/$user/plugins
    	mkdir $rutorrent_dir/conf/users/$user/plugins/autodl-irssi
    fi
    ##on donne les permission
    chown -R www-data:www-data autodl-irssi
     
    ##fichier configuration user conf.php
    cat <<'EOF' > $rutorrent_dir/conf/users/$user/plugins/autodl-irssi/conf.php
    <?php
     
    $autodlPort = @port@;
    $autodlPassword = "@pw@";
     
    ?>
    EOF
    sed -i.bak "s/@port@/$port/g;" $rutorrent_dir/conf/users/$user/plugins/autodl-irssi/conf.php
    sed -i.bak "s/@pw@/$pw/g;" $rutorrent_dir/conf/users/$user/plugins/autodl-irssi/conf.php
     
    ## Fichier configuration autodl.cfg
    cat <<'EOF' > /home/$user/.autodl/autodl.cfg
    options]
    gui-server-port = @port@
    gui-server-password = @pw@
    EOF
    sed -i.bak "s/@port@/$port/g;" /home/$user/.autodl/autodl.cfg
    sed -i.bak "s/@pw@/$pw/g;" /home/$user/.autodl/autodl.cfg
    encore merci de votre aide ^^

  4. #4
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 842
    Points
    7 842
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ls -la /home
    df -T /home
    ?

Discussions similaires

  1. Erreur de syntaxe, unexpected ';'
    Par cristelle1986 dans le forum Langage
    Réponses: 5
    Dernier message: 20/06/2014, 13h08
  2. Réponses: 6
    Dernier message: 02/12/2010, 19h54
  3. syntax error near unexpected token `fichier'
    Par kass28 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 16/03/2010, 14h57
  4. erreur : syntax error near unexpected token
    Par lapinou8430 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 28/04/2009, 00h30
  5. [sh] syntax error near unexpected token `}'
    Par vercin dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 18/09/2007, 11h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo