我正在嘗試配置 Tower(git 客戶端)來啟動 wsl bash shell。我已經嘗試了很多事情,但這似乎不是有意的。
我嘗試過的:
command: c:\windows\system32\wsl.exe
parameters: bash -i
command: c:\windows\system32\bash.exe
parameters: -i
command: c:\windows\system32\cmd.exe
parameters: /c "bash -i"
command: c:\windows\system32\bash.exe
parameters: -i
command: c:\WINDOWS\System32\windowspowershell\v1.0\powershell.exe
parameters: wsl bash -i
command: cmd
parameters: /c start start bash -i
command: C:\Windows\SysWOW64\cmd.exe
parameters: /c start start bash -i
所有這些都只是彈出一個控制台視窗很短的時間,然後返回 Tower。
大多數這些命令都可以在資源管理器視窗中運行...
答案1
若要從 32 位元進程啟動 64 位元執行檔(例如從 Tower 啟動 wsl.exe),您需要使用sysnative
檔案系統重定向器。
在這種情況下,運行:%windir%\sysnative\wsl.exe
Windows您可以先從「執行」對話方塊 ( + )執行下列命令啟動 32 位元版本的 Cmd 來對此進行測試R:%windir%\SysWoW64\cmd.exe
然後,在 Cmd 實例內,您可以執行下列命令:
%windir%\sysnative\wsl.exe
答案2
看起來這個解決方法可以解決問題:
command: C:\WINDOWS\sysnative\WindowsPowerShell\v1.0\powershell.exe
parameters: wsl bash
它啟動 64 位元 PowerShell 實例,然後載入適用於 Linux 的 Windows 子系統。
也可以看看:
選擇:
我發現的另一個選擇是使用wsl-terminal
,但由於這取決於第三方終端和一大堆其他依賴項,因此它寧願不使用它。