Résoudre l’erreur « Mauvais interpréteur:Aucun fichier.. » avec dos2unix

I. Présentation

A l'exécution d'un script shell sous Linux, il se peut que vous obteniez le message suivant : "-bash: ./script.sh : /bin/sh^M : Mauvais interpréteur : Aucun fichier ou dossier de ce type".

dos2unix1

Vous allez surement vérifier les droits d'exécution sur le fichier, vous verrez qu'ils sont corrects.

En fait, ce message apparaît lorsque le script a été fait depuis une machine sous Windows. Le formatage du texte sera alors changé et cela empêchera son exécution.

Pour pallier à ce problème, une application existe : dos2unix. Sinon, codez directement depuis une machine Linux.

II. Procédure avec dos2unix

Pour installer dos2unix sur votre machine, mettez à jour la liste de vos paquets puis téléchargez et installez le paquet dos2unix :

apt-get update
apt-get install dos2unix

Une fois l'installation terminée, utilisez dos2unix de cette façon :

dos2unix <script-sh-a-corriger>

Exemple avec un script nommé "MonScript.sh" :

dos2unix MonScript.sh

Vous obtiendrez alors un joli message pour vous avertir de la conversion du script au format Unix.

dos2unix2

Vous pouvez exécuter à nouveau votre script, cette fois-ci sans erreur. Cependant, si l'erreur persiste, vérifiez votre script il contient surement des erreurs.

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5499.Voir tous les posts

2 thoughts on “Résoudre l’erreur « Mauvais interpréteur:Aucun fichier.. » avec dos2unix

  • Hello,

    J’ai eu le problème hier avec un stagiaire, moi je recommande Notepad++ et après on va jouer dans Encodage.

    Tcho !

    Répondre
  • Merci beaucoup ! Un post clair, court et efficace, cela m’a fait gagner beaucoup de temps.

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.