Bash qui marche sous ubuntu et pas sousdebian
Alucard95
Messages postés
161
Statut
Membre
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
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
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
A voir également:
- Bash qui marche sous ubuntu et pas sousdebian
- Ubuntu 32 bits - Télécharger - Systèmes d'exploitation
- Bingo bash free - Télécharger - Divers Jeux
- Bash addition - Forum Shell
- Ubuntu portable - Télécharger - Systèmes d'exploitation
- Linux mint ou ubuntu - Guide
8 réponses
Salut,
Déjà rajoute en dessous du shebang :
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".
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".
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
Alors le résultat de la commande bash -n script .sh est :
line 31 : syntax error : unexpected end of file
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai bien rajouté le set -xv mais il me dit invalide option3: set : -
apparement il ne connait pas l'option "v"
apparement il ne connait pas l'option "v"
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
: 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
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
+ $'\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