Comment puis-je exécuter .sh dans l'invite de commande de Windows 7 ? J'obtiens toujours cette erreur lorsque j'essaie d'y exécuter cette ligne,
app/build/build.sh
erreur,
'app' is not recognized...
ou,
bash app/build/build.sh
erreur,
'bash' is not recognized...
Une idée de ce que j'ai manqué ?
Voici la capture d'écran, ![Entrez la description de l'image ici][1]
Le message d'erreur indique que vous n'avez pas installé bash
, ou qu'il n'est pas dans votre PATH
.
Le premier résultat de Google est http://win-bash.sourceforge.net/, mais vous devez également comprendre que la plupart des scripts Bash s'attendent à un environnement de type Unix ; ainsi, la simple installation de Bash ne vous permettra probablement pas d'exécuter un script trouvé sur le net, à moins qu'il n'ait été spécifiquement conçu pour ce scénario d'utilisation particulier. La solution habituelle à ce problème est https://www.cygwin.com/ mais il existe de nombreuses alternatives possibles, en fonction de ce que vous voulez exactement accomplir.
Si Windows n'est pas au centre de votre scénario d'utilisation, l'installation d'un système d'exploitation libre (peut-être virtualisé) pourrait être la solution la plus simple.
Le deuxième message d'erreur est dû au fait que Windows accepte nominalement le slash avant comme séparateur de répertoire, mais dans ce contexte, il est interprété comme un séparateur de commutation. En d'autres termes, Windows interprète votre ligne de commande comme app /build /build.sh
(ou, pour paraphraser les conventions d'options Unix, app --build --build.sh
). Vous pouvez essayer app /build /build.sh
mais il est peu probable que cela fonctionne, à cause des circonstances décrites ci-dessus.
La façon la plus courante d'exécuter un fichier [.sh][1] est d'utiliser la commande sh :
C:\>sh my-script-test.sh
Une autre bonne option consiste à installer [CygWin][2].
dans Windows
où se trouve le home
:
C:\cygwin64\home\[user]
Par exemple, j'exécute mon fichier my-script-test.sh
en utilisant la commande [bash][3] comme suit :
jorgesys@INT024P ~$ bash /home/[user]/my-script-test.sh
[1] : http://en.wikipedia.org/wiki/Bourne_shell [2] : https://www.cygwin.com/ [3] : http://linux.about.com/library/cmd/blcmdl1_bash.htm
Nouvelle fonctionnalité dans Windows - exécuter bash sur ubuntu sur windows - disponible dans les builds de Windows 10 "Insiders" ; après la conférence Build :
https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/