Erreur Script Bash

Résolu
su-toto Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   -  
su-toto Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pourriez vous svp m'aider a deboguer un petit script de Mise a jour, j'ai une erreur lorsque que je tente de l'executer :


#!/bin/bash

cond='true'

echo "Bienvenue dans le script de Mise a jour !"

# On se met dans le rep. du script

cd /home/abcd-server/Bureau

# On verifie que l'on est en root

if [ $EUID -ne 0 ]; then


        echo "Veuillez vous connecter en Super-Utilisateur (Commande su dans le terminal)"
        exit
fi

# On lance la boucle, on n'en sort que si l'entrée est valide

while [ $cd = "true" ]; do

read -p ' Bienvenur Super-User. Voulez vous lancer mises a jour ? [O/N] ' -n 1 choix

if [ $choix = "n" ] || [ $choix = "N"]; then

        echo "Abandon"
        cond='false'

# l'utilisateur repond non avec "n" ou "N" cond passe a false et on sort de la boucle


elif [ choix = "o" ] || [ $choix = "O"]; then


        echo" "Lancement de YUM..."
        echo "Mise a jour des logiciels"
        yum upgrade
        echo "terminé"
        cond='false'
# l'utilisateur repond oui avec "o" ou "O" cond passe a false et on sort de la boucle

else

     echo "ERREUR"

# l'utilisateur repond n'importe quoi cond reste a true et on repart a la saisie

fi

done

# fin du if et du while et du script



Quand je l'execute, le terminal me renvoi :

  

./Script Mise a Jour2.sh: ligne46: Caractère de fin de fichier (EOF) prématuré lors de la recherche du « " » correspondant
./Script Mise a Jour2.sh: ligne55: Erreur de syntaxe : fin de fichier prématurée


Quelqu'un a une idée ? Merci pour votre aide !

3 réponses

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

    Ligne 37 :
    echo" "Lancement de YUM..."
    il y a un guillemet de trop ;-(
    0
  2. jee pee Messages postés 31890 Date d'inscription   Statut Modérateur Dernière intervention   9 984
     
    Salut,

    Peut être parce qu'en 37 tu as une " en trop juste derrière echo.

    cdlt

    ps : la coloration syntaxique sur CCM n'est pas si mauvaise ;-)

            Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    0
  3. su-toto Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   2
     
    Autant pour moi, la couleur m'a bien aidé ! ( Ahlala ecrire des scripts dans vim me reussi décidement pas ! )
    Voici le script corrigé (car bourré d'erreurs !)

    
    #!/bin/bash
    
    cond='true'
    
    echo "Bienvenue dans le script de Mise a jour !"
    
    # On se met dans le rep. du script
    
    cd /home/abcd-server/Bureau
    
    # On verifie que l'on est en root
    
    if [ $EUID -ne 0 ]; then
    
    
            echo "Veuillez vous connecter en Super-Utilisateur (Commande su dans le terminal)"
            exit
    fi
    
    # On lance la boucle, on n'en sort que si l'entrée est valide
    
    while [ $cond = 'true' ]; do
    
    read -p ' Bienvenur Super-User. Voulez vous lancer mises a jour ? [O/N] ' -n 1 choix
    
    if [ $choix = "n" ] || [ $choix = "N" ]; then
    
            echo "Abandon"
            cond='false'
    
    # l'utilisateur repond non avec "n" ou "N" cond passe a false et on sort de la boucle
    
    
    elif [ $choix = "o" ] || [ $choix = "O" ]; then
    
    
            echo "Lancement de YUM..."
            echo "Mise a jour des logiciels"
            yum upgrade
            echo "terminé"
            cond='false'
    # l'utilisateur repond oui avec "o" ou "O" cond passe a false et on sort de la boucle
    
    else
    
        	echo "ERREUR"
    
    # l'utilisateur repond n'importe quoi cond reste a true et on repart a la saisie
    
    fi
    
    done
    
    # fin du if et du while et du script
    
    
    


    Désolé pour ce topic inutile, il m'aurrait suffit d'avoir un éditeur plus coloré !

    Cordialement
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Pour la coloration syntaxique dans vi/vim : http://www.zenzla.com/astuces/335-vi-coloration-syntaxique.html
      0
    2. su-toto Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   2
       
      Merci beaucoup !
      0