use*_*579 3 windows ssh bash virtual-machine windows-subsystem-for-linux
我正在 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
Run Code Online (Sandbox Code Playgroud)
更新:在通过 SSH 连接到 Windows 10 虚拟机后,我可以通过bash.exe从C:\Windows\System32. 但是,当我第一次使用 SSH 时,它仍然作为默认的 Windows 命令行启动。
您必须使用相同的命令:
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\bash.exe" -PropertyType String -Force
在运行 Windows 10 的虚拟机上。