Exécuter le script bash à partir de Windows PowerShell

in cygwin, I could just do ./script.sh args, mais ceci ouvre le fichier script dans notepad dans PowerShell.

Que dois-je faire exécuter?

25
demandé sur wsorenson 2009-07-08 19:22:30
la source

3 ответов

Vous devriez mettre le script comme argument pour un shell * NIX que vous lancez, équivalent à *NIXish

sh myscriptfile
19
répondu TheBonsai 2009-07-08 20:16:11
la source

il y a maintenant une solution "native" sur Windows 10, après avoir activé Bash sur Windows, vous pouvez entrer Bash shell en tapant bash: Bash on Windows

vous pouvez exécuter bash script comme bash ./script.sh, mais gardez à l'esprit que c drive est situé à /mnt/c, et les disques durs externes ne sont pas montable. Vous pourriez donc avoir besoin de modifier un peu votre script pour qu'il soit compatible avec Windows.

aussi, même si root, vous pouvez toujours obtenir la permission refusée lors d'un déménagement fichiers dans /mnt, mais vous avez votre root puissance / système de fichiers.

assurez-vous également que votre script shell est formaté avec le style Unix, ou qu'il peut y avoir des erreurs. Example script

14
répondu Marius Tancredi 2017-06-05 02:16:17
la source

Si vous ajoutez l'extension .SH à la variable d'environnement PATHEXT, vous pourrez exécuter des scripts shell à partir de PowerShell en n'utilisant que le nom du script avec les arguments:

PS> .\script.sh args

si vous stockez vos scripts dans un répertoire qui est inclus dans votre variable D'environnement PATH, vous pouvez l'exécuter de n'importe où, et omettre l'extension et le chemin:

PS> script args

Note: sh.exe ou un autre * Nix shell doit être associé à la .sh extension.

5
répondu Rynant 2012-11-10 01:27:28
la source

Autres questions sur