Associer des scripts .SH Shell à Bash dans Windows 10

Si vous avez installé Bash sur Ubuntu sous Windows dans Windows 10 version 1607 et supérieure et que vous souhaitez associer des scripts shell .SH à Bash, voici une solution de script rapide.

Pour accéder au chemin du système de fichiers Windows dans Bash, vous utilisez la syntaxe ou la sémantique suivante:

 /mnt/c/Windows/MyTasks.sh 

J'ai écrit un petit Vbscript qui convertit le chemin du fichier Windows tel que C:\Windows\MyTasks.sh, en * chemin du système de fichiers NIX. Le script lance ensuite Bash en passant le chemin du fichier * NIX comme argument. Ce script peut être associé aux types de fichiers .SH à l'aide de la modification de registre fournie ci-dessous.

Télécharger

Téléchargez bash_sh_assoc.zip, décompressez et exécutez le fichier REG joint. bash.vbs ensuite le fichier de script bash.vbs vers le répertoire Windows. Cela associe les types de fichiers .SH au fichier de script bash.vbs.

Contenu du fichier Vbscript Bash.vbs

 If WScript.arguments.count 0 then sSHfile = WScript.Arguments(0) If LCase(Right(sSHfile, 3)) = ".sh" Then Dim WshShell: Set WshShell = WScript.CreateObject("Wscript.Shell") PathArr = Split(sSHfile, ":") sSHfile = "/mnt/" & LCase(PathArr(0)) & PathArr(1) sSHfile = Replace(sSHfile, "\", "/") WshShell.Run "%systemroot%\system32\bash.exe " & """" & sSHfile & """",, True Set WshShell = Nothing End If End If 

Contenu du fichier REG

 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.sh] @="shfile" [HKEY_CLASSES_ROOT\shfile] @="SH Script File" [HKEY_CLASSES_ROOT\shfile\defaulticon] @="%USERPROFILE%\\AppData\\Local\\lxss\\bash.ico" [HKEY_CLASSES_ROOT\shfile\shell\open\command] @="wscript.exe \"C:\\Windows\\bash.vbs\" \"%1\"" 

Article similaire

Ajouter Bash au menu contextuel des dossiers dans Windows 10

Articles Connexes