如何在具有vscode集成终端的另一终端中运行任务

时间:2019-02-21 15:13:46

标签: visual-studio-code vscode-tasks

ITNOA

嗨,

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

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

例如,如果您将默认集成终端设置为wsl,并且想要像下面这样在task.json中运行bat file,则会出现一些错误,并且任务无法正常工作。

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

1 个答案:

答案 0 :(得分:0)

vscode documents for tasks中您可以看到,其中一个部分是关于common questions的,类似下面的内容

  

任务可以使用与为集成终端指定的外壳不同的外壳吗?

回答这个问题是,并提供以下详细信息

  

您可以使用options.shell属性覆盖任务的外壳。您可以针对每个任务,全局或针对每个平台进行设置。例如,要在Windows上使用cmd.exe,您的task.json将包括:

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