如何使用 vscode 集成终端在另一个终端中运行任务

How to run task in another terminal with vscode integrated terminal

提问人:sorosh_sabz 提问时间:2/21/2019 最后编辑:Dharmansorosh_sabz 更新时间:5/19/2023 访问量:4219

问:

我的问题是vscode中的默认集成终端与所需的tasks.json不同。

所以当我想在tasks.json运行命令时,我遇到了很多麻烦。

例如,如果您将默认集成终端设置为 WSL,并且想要以如下所示tasks.json运行 bat 文件,则会出现一些错误,并且任务不起作用。

"tasks": [
    {
        "label": "build",
        "type": "shell",
        "command": "build.bat",
        "args": [],
        "presentation": {
            "echo": true,
            "reveal": "always",
            "focus": true,
            "panel": "shared",
            "showReuseMessage": true,
            "clear": false
        }
    }
]
visual-studio-代码 vscode-tasks

评论


答:

2赞 sorosh_sabz 2/21/2019 #1

正如您在任务的 vscode 文档中看到的那样,其中一个部分是关于常见问题的如下所示

任务是否可以使用与为集成终端指定的 shell 不同的 shell?

回答这个问题是肯定的,详情如下

您可以使用 options.shell 属性覆盖任务的 shell。您可以按任务、全局或按平台设置此项。例如,要在 Windows 上使用 cmd.exe,您的tasks.json将包括:

{
    "version": "2.0.0",
    "windows": {
        "options": {
            "shell": {
                "executable": "cmd.exe",
                "args": [
                    "/d", "/c"
                ]
            }
        }
    },
    ...