Bash qui marche sous ubuntu et pas sousdebian

Alucard95 Messages postés 161 Statut Membre -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Alors voila mon soucis j'ai fais un script bash qui fonctionne très bien sous ubuntu mais pas sous debian ou la j'ai l'erreur command not found.

Le problème c'est que je ne trouve pas qu'elle est la partie qui ne fonctionne pas vu qu'il n'y a pas de détail dans le message d'erreur. Voici le script:

#!/bin/bash

table=( $( echo "use database; show tables;" | mysql --user=zabbix --password=zabbix ) )

nb=$( echo ${#table[@]} )

nb=`expr $nb - 1`

i=1

while [ $i -le $nb ]; do

echo "usedatabase; alter table ${table[$i]} engine = innodb;" | mysql --user=user --password=password;

echo ${table[$i]};

i=`expr $i + 1`;

echo $i;

done

Voila, si quelqu'un arrive à voir ou se trouve l'erreur.

Merci d'avance
Configuration: Windows XP
Firefox 3.0.3

8 réponses

  1. Utilisateur anonyme
     
    As tu les memes paquets concernant mysql sur les deux ordis ?
    0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Déjà rajoute en dessous du shebang :
    set -xv

    pour rendre ton script verbeux. Rajoute l'option "-n" si tu ne veux pas qu'il soit exécuté, mais juste vérifier.

    Tu peux aussi ajouter l'option "-e" si tu veux que l'exécution s'arrête dès qu'une commande renvoie "faux".
    0
  3. Alucard95 Messages postés 161 Statut Membre 2
     
    Alors, pour les paquets mysql ils sont tous les 2 à la version 5.

    Alors le résultat de la commande bash -n script .sh est :

    line 31 : syntax error : unexpected end of file
    0
    1. Utilisateur anonyme
       
      Non je parles pas des paquets Mysql mais des paquets concernant mysql. Il doit t'en manquer un je pense
      0
    2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      line 31 : syntax error : unexpected end of file
      Et c'est laquelle cette ligne ???

      Il est entier ton script là ?
      0
      1. Alucard95 Messages postés 161 Statut Membre 2 > jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Bah la ligne 31 c'est la ligne du "done" (j'ai enlevé tous mes commentaires perso sur le script que j'ai posté dsl) et oui normalement il manque rien...
        0
  4. Alucard95 Messages postés 161 Statut Membre 2
     
    Je vais voir ça, mais dans ce cas, il devrais pas me sortir une erreur mysql??
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Alucard95 Messages postés 161 Statut Membre 2
     
    j'ai bien rajouté le set -xv mais il me dit invalide option3: set : -
    apparement il ne connait pas l'option "v"
    0
  7. Alucard95 Messages postés 161 Statut Membre 2
     
    Alors, voila tous le message d'erreur (j'ai enleve le set -xv) à la commande bash script.sh

    : commande not found
    : commande not found
    : commande not found
    : commande not found
    : commande not found
    : commande not found
    expr: expression non numérique
    : commande not found
    : commande not found
    : commande not found
    0
    1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      expr: expression non numérique
      Tu peux afficher la sortie de ton script avec le débogage activé s'il te plaît, merci ?
      0
      1. Alucard95 Messages postés 161 Statut Membre 2 > jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention  
         
        heu... avec le debogage activé c'est à dire avec l'option --debugger??

        Si c'est bien ça le message d'erreur est le même
        0
      2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898 > Alucard95 Messages postés 161 Statut Membre
         
        Non avec l'option -x (et -v si elle marche) afin de voir comment sont interprétées chaque commande et variable...
        0
  8. Alucard95 Messages postés 161 Statut Membre 2
     
    Alors voila ce que ça me retourne :

    + $'\r'
    : command not found
    + $'\r'
    : command not found
    + table=()
    + $'\r'
    : command not found
    + $'\r'
    : command not found
    ++ echo 0
    + nb=$'0\r'
    + $'\r'
    : command not found
    + $'\r'
    : command not found
    ++ expr $'0\r' - 1
    expr: argument non numérique
    + nb=$'\r'
    + $'\r'
    : command not found
    + $'\r'
    : command not found
    + i=$'1\r'
    + $'\r'
    : command not found
    script.sh: line 30: syntax error: unexpected end of file
    0
  9. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Tu peux afficher le résultat de :
    cat -A ton-script
    0