Windows下通过npm/PowerShell使用devspace时提示sh.exe未识别怎么办?
问题根源
报错核心是通过npm安装的devspace启动脚本依赖sh.exe,但Windows系统默认未预装Unix风格的Shell环境,导致无法定位该程序执行后续命令。
解决办法
方法1:安装Git for Windows(自带sh.exe)
- 下载安装Git for Windows,安装过程中确保勾选**"Add Git to PATH"(默认选项已包含),同时保留"Git Bash Here"**选项。
- 安装完成后重启PowerShell,此时系统PATH会自动包含Git自带的
sh.exe路径,重新执行devspace命令即可。
方法2:改用Windows原生二进制包安装
- 放弃npm安装方式,直接下载devspace的Windows专属二进制可执行文件。
- 将下载的
devspace.exe放置到系统PATH包含的目录(如C:\Windows\System32),或手动把该文件所在目录添加到系统环境变量PATH中。 - 重启PowerShell后,执行正确命令:
devspace version(注意你之前输入的versiono是拼写错误)或devspace init。
方法3:修改devspace的PowerShell启动脚本
- 定位到报错提及的脚本文件:
C:\Users\你的用户名\AppData\Roaming\npm\devspace.ps1。 - 打开脚本,将第24行的
"sh$exe"替换为Git Bash的实际路径(例如"C:\Program Files\Git\bin\sh.exe",需根据你的Git安装目录调整)。 - 保存修改后重启PowerShell,重试命令。
内容的提问来源于stack exchange,提问作者Nazneen Mulani
相关产品推荐
相关产品推荐

