#1 Le 15/02/2012, à 16:20
- linux38000
cannot execute binary file
Bonjour et merci par avance pour votre aide.
J'ai un fichier nom_fichier.sh (pas besoin de compilation), bien formaté (dos2unix), ayant les bons droits d'exécution (777), avec un bon positionnement du shell d'execution (première ligne: #!/bin/bash).
Quand je l'exécute,
./nom_fichier.sh
j'ai le message: ./nom_fichier.sh cannot execute binary file
Aurez vous une idée pour résoudre cette méchanceté?
Une fois encore merci pour votre aide.
Hors ligne
#2 Le 15/02/2012, à 17:17
- pingouinux
Re : cannot execute binary file
Salut,
Que donne la commande ?
file ./nom_fichier.sh
Hors ligne
#3 Le 16/02/2012, à 17:02
- linux38000
Re : cannot execute binary file
Salut,
La commande file donne: UTF-8 Unicode text
Hors ligne
#4 Le 16/02/2012, à 18:48
- pingouinux
Re : cannot execute binary file
Il faudrait déjà vérifier le choix d'encodage des caractères dans le terminal : Terminal -> "Set Character Encoding"
N'y a-t-il pas des caractères bizarres dans le fichier ?
Peux-tu élaguer le fichier, en ne conservant que le minimum pour que ça plante, et l'envoyer ?
Hors ligne
#5 Le 17/02/2012, à 09:43
- credenhill
Re : cannot execute binary file
hello
afficher le début du fichier avec
cat -A nom_fichier.sh
Hors ligne
#6 Le 17/02/2012, à 10:32
- linux38000
Re : cannot execute binary file
Bonjour,
Merci pour vos suggestions. Comme je disais dans le premier post: J'ai un fichier nom_fichier.sh (pas besoin de compilation), bien formaté (dos2unix), ayant les bons droits d'exécution (777), avec un bon positionnement du shell d'execution (première ligne: #!/bin/bash).
Donc pas de caractères bizzares, pas de problème d'encodage, pas de problème de shell, pas de problème de droit, pas de problème de corruption. Sur une autre plateforme de même configuration, le fichier s'exécute correctement.
Ce qui me fait tout bizzare c'est le message "cannot execute binary file" qui stipule que mon fichier .sh est binaire.
Merci pour votre temps
Hors ligne
#7 Le 17/02/2012, à 10:59
- credenhill
Re : cannot execute binary file
c'est peut-être dans le script qu'il n'arrive pas à exécuter un fichier, place un set -x au debut du script
Hors ligne
#8 Le 17/02/2012, à 11:24
- pingouinux
Re : cannot execute binary file
Deux autres suggestions :
Vérifier que les fichiers (celui qui est bon et celui qui donne une erreur) sont bien identiques, avec md5sum
Essayer de le lancer comme ceci : bash ./nom_fichier.sh
Hors ligne
#9 Le 17/02/2012, à 11:35
- pingouinux
Re : cannot execute binary file
La commande file donne: UTF-8 Unicode text
Chez moi, quand la première ligne est correcte (#!/bin/bash), j'obtiens ceci :
$ file nom_fichier.sh
nom_fichier.sh: Bourne-Again shell script text executable
La première ligne commence-t-elle bien en colonne 1 ?
Hors ligne