首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在VSCode中使用cmder和powershell?

如何在VSCode中使用cmder和powershell?
EN

Stack Overflow用户
提问于 2017-08-20 04:38:25
回答 2查看 2.6K关注 0票数 4

我在VSCode中使用cmder作为终端。我试图在VSCode中集成powershellcmder。我看到在powershellcmder配置中,以下内容是作为参数传递的:

代码语言:javascript
运行
复制
"-ExecutionPolicy Bypass -NoLogo -NoProfile -NoExit -Command" "Invoke-Expression '. ''C:\\cmder\\vendor\\profile.ps1'''"

我尝试在user.settings中这样使用它:

代码语言:javascript
运行
复制
"terminal.integrated.shell.windows": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"terminal.integrated.shellArgs.windows": ["-ExecutionPolicy Bypass -NoLogo -NoProfile -NoExit -Command \"Invoke-Expression '. ''C:\\cmder\\vendor\\profile.ps1'''\""]

然而,终端在打开时崩溃。

我想我需要一些帮助或指导。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-27 09:25:55

您不能将参数作为一个大字符串传递到该设置中。它通过以逗号分隔的形式传递它们来解析它。

我还从this issue on GitHub中发现,Invoke-Expression方法永远不会调用该文件,因此提供了下面的正确方法。

另外,请注意,您在下面的屏幕截图中看到的错误是因为cmder附带的配置文件没有正确编码。

您需要以以下格式将参数添加到设置文件中:

代码语言:javascript
运行
复制
"terminal.integrated.shellArgs.windows": [
    "-ExecutionPolicy",
    "Bypass",
    "-NoLogo",
    "-NoProfile",
    "-NoExit",
    "-Command",
    ". 'C:\\tools\\cmder\\vendor\\profile.ps1'"]

编辑

试图找出显示的错误似乎有一点错误,因为在打开cmder之后,环境变量$env:CMDER_ROOT会正确显示。但是,在上面的代码中启动它之后,由于某种原因,它显示CMDER_ROOT被设置为C:\。有些事情你必须自己弄清楚,或者向维护软件的人请教。

票数 4
EN

Stack Overflow用户

发布于 2018-02-22 19:56:40

要修复路径错误,您可以设置设置路径

代码语言:javascript
运行
复制
$env:CMDER_ROOT = "path to CMDER e.g. D:\cmder_mini";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45776074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档