Comment puis-je exécuter .sh sur l'invite de commande Windows 7? J'obtiens toujours cette erreur quand j'essaye d'exécuter cette ligne dedans,
app/build/build.sh
Erreur,
'app' is not recognized...
ou,
bash app/build/build.sh
Erreur,
'bash' is not recognized...
Des idées qu'est-ce que j'ai manqué?
Voici la capture d'écran,
windows
bash
command-line
sh
laukok
la source
la source
.sh
fichiers sous Windows.Réponses:
Le message d'erreur indique que vous n'avez pas installé
bash
ou qu'il n'est pas dans votrePATH
.Le hit de Google le plus populaire est http://win-bash.sourceforge.net/ mais vous devez également comprendre que la plupart des scripts Bash attendent un environnement de type Unix; Il est donc peu probable que l'installation de Bash vous permette d'exécuter un script que vous avez trouvé sur le net, à moins qu'il n'ait été spécifiquement conçu pour ce scénario d'utilisation particulier. La solution habituelle à cela est https://www.cygwin.com/ mais il existe de nombreuses alternatives possibles, en fonction de ce que vous voulez accomplir exactement.
Si Windows n'est pas au cœur de votre scénario d'utilisation, l'installation d'un système d'exploitation gratuit (peut-être virtualisé) pourrait être la solution la plus simple.
Le deuxième message d'erreur est dû au fait que Windows accepte nominalement la barre oblique comme séparateur de répertoire, mais dans ce contexte, il est interprété comme un séparateur de commutateur. En d'autres termes, Windows analyse votre ligne de commande comme
app /build /build.sh
(ou, pour paraphraser avec les conventions d'options Unix,app --build --build.sh
). Vous pouvez essayer,app\build\build.sh
mais il est peu probable que cela fonctionne, en raison des circonstances décrites ci-dessus.la source
Installez GIT . Lors de l'installation de GIT, ajoutez GIT Bash au menu contextuel de Windows en sélectionnant son option. Après l'installation, faites un clic droit dans votre dossier, sélectionnez
GIT Bash Here
(voir photo ci-jointe) et utilisez votre commande sh comme par exemple:la source
sh.exe
. Dans mon cas , il était:c:\Program Files\Git\bin
. Ensuite, exécutezsh .\script.sh
PowerShellctrl-ins
etshift-ins
La manière la plus courante d'exécuter un fichier .sh consiste à utiliser la commande sh :
une autre bonne option consiste à installer CygWin
dans
Windows
lehome
est situé à:par exemple j'exécute mon
my-script-test.sh
fichier en utilisant la commande bash comme:la source
sh
commande sous Windows.sh
sur une invite de commande Windows arbitraire et à la faire fonctionner.sh
commande sont installés avec Git4Windows si vous sélectionnez l'option d'installation 'Install Bash'.vous pouvez également utiliser cmder
cmder.net
la source
cmd
.Sur la mise à jour anniversaire de Windows 10, il est encore plus facile d'exécuter des commandes shell dans / avec bash sur ubuntu sous Windows
J'essayais de définir ma région pour mon routeur netgear x-wrt r7000, j'ai trouvé que ce qui suit fonctionnait pour moi, en utilisant bash sur ubuntu sous Windows, vous devez activer le sous-système trouvé dans les fonctionnalités Windows et le mode dev sur
la source
Nouvelle fonctionnalité dans Windows - exécuter bash sur ubuntu sous Windows - disponible dans les builds Windows 10 "Insiders" après la conférence Build:
https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/
la source
sh
fichier avecbash
? Si j'essaye de le faire, la fenêtre clignote et disparaît. Si je glisse et dépose le fichier dans une fenêtre bash ouverte, cela indique que le chemin n'a pas été trouvé (car il utilise une convention différente).bash path/to/script
exécute le script. Il y en a certainement aussish
dans Ubuntu. Si le script a un shebang et des permissions appropriés, ilpath/to/script
l'exécutera simplement avec l'interpréteur spécifié dans le shebang.Personnellement, j'ai utilisé ce fichier de commandes, mais il nécessite l'installation de CygWin (64 bits comme indiqué). Associez simplement le type de fichier .SH à ce fichier batch (ExecSH.BAT dans mon cas) et vous pouvez double-cliquer sur le .SH et il s'exécute.
Basé sur ce travail original.
la source
J'utilise Windows 10 Bash shell aka Linux Subsystem aka Ubuntu dans Windows 10 comme guidé ici
la source