VSCode中Task的使用

本文介绍了Visual Studio Code中的Tasks配置与运行,包括如何创建第一个Task,如何运行Task,以及详细解析Task的主要属性,如label、type、command等,并阐述了如何控制Task的输出行为和运行时的行为,同时还涵盖了变量替换的用法,帮助开发者更好地自动化工作流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录



前言

        许多工具都可以把重复的任务自动化,VSCode中的Task就是这个功能。


一、配置第一个Task

        首先选择“终端”->“配置任务”,然后选择“使用模板创建task.json文件。(注意:如果你没有看到Task模板列表,可能是你的项目中已经又一个task.json文件了)然后选择“Others”。

        这是VSCode会自动创建如下代码: 

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "echo",
            "type": "shell",
            "command": "echo Hello"
        }
    ]
}

二、运行Task

        在“终端”里选择“运行任务”,会显示所有可能运行的Task。选择echo后,会让你选择要针对何种错误和警告扫描Task的输出。

        输出如下

三、配置复杂Task

1.Task中一些主要的属性及相应语义:

        label:在用户界面上展示的Task标签

        type:Task的类型,分为shell和process两种

                shell:作为Shell命令运行

                process:作为一个进程运行

        command:真正执行的命令

        windows:Windows中的特定属性。相应的属性会在Windows中覆盖默认的属性定义。

        group:定义Task属于哪一组

        presentation:定义用户界面如何处理Task的输出

        options:定义cwd(当前工作目录)、env(环境变量)和shell的值

        runOptions:定义Task何时运行及如何运行。 

2.控制Task在运行时的输出行为:

        reveal:控制集成终端是否显示

                always:集成终端总是会在Task启动时显示

                never:集成终端不会主动显示

                silent:当输出不是错误和警告时,集成终端才会显示

        focus:控制集成终端在显示时是否取得焦点

        echo:控制被执行的命令是否在集成终端中输出

        showReuseMessage:控制是否显示显示“Terminal will be reused by tasks,press any key to close it”提示信息

        panel:控制不同的Task在运行时是否共享同一个集成终端

                shared:共享集成终端

                dedicated:Task会有一个专用的集成终端

                new:每次运行的Task都会创建一个新的集成终端

        clear:控制Task在运行前,是否清除集成终端的输出

        group:控制Task是否在同一个集成终端中运行

3.控制Task在运行时的运行行为

        reevaluateOnRerun:在执行Rerun Last Task命令时,控制是否重新计算变量

        runOn:指定何时运行Task

                default:只有在运行RunTask命令时,才会触发运行

                foderOpen:当包含这个tasks.json文件夹被打开时,便会触发运行

4.变量替换

        ${workspaceFolder}:在Visual Studio Code中打开的文件夹的完整路径

        ${workspaceFolderBasename}:在Visual Studio Code中打开的文件夹名

        ${file}:当前打开的文件的完整路径

        ${relativeFile}:当前打开的文件的相对workspaceFolder路径

        ${relativeFileDirname}:当前打开的文件的文件夹的相对workspaceFolder路径

        ${fileBasenameNoExtension}:当前打开的文件的文件名,不包含扩展名

        ${fileDirname}:当前打开的文件的文件夹的完整路径

        ${fileExtname}:当前打开的文件的扩展名

        ${cwd}:Task启动时的工作目录

        ${lineNumber}:当前光标的所在的行号

        ${selectedText}:当前打开的文件中选中的文本

        ${execPath}:Visual Studio Code可知行文件的完整路径

        ${defaultBuildTask}:默认的Build Task的名字

        ${env:Name}:引用环境变量

        ${config:Name}:可以引用Visual Studio Code的设置项

        ${input:variableID}:传入输入变量

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值