windows - langage - commande dos cd



Comment exécuter.sh sur l'invite de commande Windows? (5)

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, cliquez avec le bouton droit de la souris sur votre dossier, sélectionnez GIT Bash Here (voir l'image ci-jointe) et utilisez votre commande sh comme par exemple:

sh test.sh

https://ffff65535.com

Comment puis-je exécuter .sh sur l'invite de commande Windows 7? Je reçois toujours cette erreur lorsque j'essaie d'exécuter cette ligne,

app/build/build.sh

Erreur,

'app' is not recognized...

ou,

bash app/build/build.sh

Erreur,

'bash' is not recognized...

Des idées que j'ai manqué?

Voici la capture d'écran,


Le message d'erreur indique que vous n'avez pas installé bash ou que ce n'est pas dans votre PATH .

Le plus grand succès de Google 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 le simple fait d’installer Bash vous permette d’exécuter un script que vous avez trouvé sur le réseau, sauf s’il a été spécialement 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.

Si Windows n’est pas au cœur de votre scénario d’utilisation, l’installation d’un système d’exploitation libre (peut-être virtualisé) peut constituer la solution la plus simple.

Le deuxième message d'erreur est dû au fait que Windows accepte nominalement la barre oblique en tant que 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 sous la forme app /build /build.sh (ou, pour paraphraser avec les conventions d'option 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.



Personnellement, j'ai utilisé ce fichier de commandes, mais CygWin doit être installé (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 fichier .SH pour le lancer.

@echo off
setlocal

if not exist "%~dpn1.sh" echo Script "%~dpn1.sh" not found & goto :eof

set _CYGBIN=C:\cygwin64\bin
if not exist "%_CYGBIN%" echo Couldn't find Cygwin at "%_CYGBIN%" & goto :eof

:: Resolve ___.sh to /cygdrive based *nix path and store in %_CYGSCRIPT%
for /f "delims=" %%A in ('%_CYGBIN%\cygpath.exe "%~dpn1.sh"') do set _CYGSCRIPT=%%A
for /f "delims=" %%A in ('%_CYGBIN%\cygpath.exe "%CD%"') do set _CYGPATH=%%A

:: Throw away temporary env vars and invoke script, passing any args that were passed to us
endlocal & %_CYGBIN%\mintty.exe -e /bin/bash -l -c 'cd %_CYGPATH%;  %_CYGSCRIPT% %*'

Basé sur this travail original.


vous pouvez aussi utiliser cmder

Cmder est un logiciel créé à partir de la frustration due à l’absence d’émulateurs de console sur Windows. Il est basé sur un logiciel étonnant et pimenté avec la palette de couleurs Monokai et une mise en page personnalisée, offrant une apparence sexy dès le début.

cmder.net





sh