You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在VSCode中通过WSL使用SSH并指定端口的连接问题

解决VS Code中通过WSL SSH指定端口且不修改现有bat脚本的问题

问题背景

  • 已实现通过WSL的SSH连接默认22端口,现需指定其他端口(如2222),SSH配置已完成:
Host 目标主机
  HostName 目标主机IP
  ForwardAgent yes
  Port 2222
  • 现有用于多连接的ssh.bat脚本内容如下,执行时触发错误,且不愿修改该脚本:
C:\Windows\system32\wsl.exe bash -ic 'ssh %*'

报错信息

[11:01:27.830] "install" terminal command done
[11:01:27.831] Install terminal quit with output: error: unknown command: bash
[11:01:27.832] Received install output: error: unknown command: bash
[11:01:27.833] Failed to parse remote port from server output
[11:01:27.834] Resolver error: Error: 

解决思路(无需修改ssh.bat)

1. 将WSL默认Shell设置为Bash

报错核心是WSL找不到bash命令,大概率是当前WSL默认Shell不是Bash。按以下步骤操作:

  • 打开WSL终端(任意已安装的发行版)
  • 执行命令:
chsh -s /bin/bash
  • 重启WSL(可通过wsl --shutdown命令关闭后重新打开)
    之后wsl.exe bash就能正常调用Bash,原bat脚本无需修改即可正常执行,同时SSH配置里的端口2222会生效。

2. 验证SSH配置有效性

确保WSL内的SSH配置文件(~/.ssh/config)格式正确,可直接在WSL终端执行ssh 目标主机测试连接,确认能通过2222端口连接成功,避免因配置本身问题导致后续VS Code连接失败。


内容的提问来源于stack exchange,提问作者Daryll

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 05:55:24