我正在通过 Windows 命令行和 WSL bash SSH 进入虚拟机。但是,每次我通过 SSH 进入 Windows 10 VM(从我自己的 Windows 10 本地计算机)时,它都会打开默认的 Windows 命令提示符作为 shell。我希望当我在 Windows 命令提示符和 WSL bash(在我的本地计算机上)上使用 SSH 时,WSL bash 都会打开。我的本地计算机和虚拟机都安装了 WSL。
我尝试过:New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\bash.exe" -PropertyType String -Force
在以管理员身份运行的 Windows Powershell 上,但它不起作用。我得到的只是这个,但没有任何变化:
DefaultShell : C:\Windows\System32\bash.exe
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE
PSChildName : OpenSSH
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
bash.exe
更新:通过 SSH 进入 Windows 10 VM 后,我可以通过 运行来更改 shell C:\Windows\System32
。但是,当我第一次使用 SSH 时,它仍然作为默认的 Windows 命令行启动。
答案1
您必须使用相同的命令:
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\bash.exe" -PropertyType String -Force
在运行 Windows 10 的虚拟机上。