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

Windows11下如何让VS Code DevContainer使用Bash执行命令?

解决VS Code DevContainer在Windows 11下用Bash执行Shell脚本的问题

问题场景

在装有WSL和Docker Desktop的Windows 11电脑上,通过VS Code DevContainer构建Matter项目时,执行“在容器中重新打开”操作触发initializeCommand时出现报错:

Running the initializeCommand from devcontainer.json...

[10282 ms] Start: Run: C:\Windows\system32\cmd.exe /c .devcontainer/build.sh --tag matter-dev-environment:local --version 22
'.devcontainer' is not recognized as an internal or external command,
operable program or batch file.

原因是默认情况下DevContainer用cmd.exe执行命令,而cmd无法识别Shell脚本语法。

解决方案

修改项目中.devcontainer/devcontainer.json文件的initializeCommand字段,明确指定用WSL的Bash来执行脚本:

  • 打开.devcontainer/devcontainer.json文件
  • 找到initializeCommand配置项,将原有命令替换为:
"initializeCommand": "wsl -e bash -c \".devcontainer/build.sh --tag matter-dev-environment:local --version 22\""
  • 保存文件后,重新执行“在容器中重新打开”操作

补充说明

  • 确保Docker Desktop已启用WSL集成(在Docker设置的Resources > WSL Integration中开启对应WSL发行版的集成)
  • 若使用Git Bash等其他Bash环境,也可指定其路径,例如:"initializeCommand": "\"C:\\Program Files\\Git\\bin\\bash.exe\" -c \".devcontainer/build.sh --tag matter-dev-environment:local --version 22\"",但WSL的Bash更适配Matter项目的构建环境

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 04:21:03