如何理解VSCode tasks.json中的替换变量${workspaceFolder}的含义?

2026-04-29 07:423阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计675个文字,预计阅读时间需要3分钟。

如何理解VSCode tasks.json中的替换变量${workspaceFolder}的含义?

在编写任务配置时,使用一组预定义的常用变量通常很有用。VS Code 支持在 tasks.json 文件中的字符串内部进行变量替换,并提供了以下预定义变量:${workspaceFolder}。

When authoring tasks configurations, it is often useful to have a set of predefined common variables. VS Code supports variable substitution inside strings in the tasks.json file and has the following predefined variables:

  • ${workspaceFolder} the path of the workspace folder that contains the tasks.json file
  • ${workspaceRootFolderName} the name of the folder opened in VS Code without any slashes (/)
  • ${file} the current opened file
  • ${relativeFile} the current opened file relative to the workspace folder containing the file
  • ${fileBasename} the current opened file's basename
  • ${fileBasenameNoExtension} the current opened file's basename without the extension
  • ${fileDirname} the current opened file's dirname
  • ${fileExtname} the current opened file's extension
  • ${cwd} the task runner's current working directory on startup
  • ${lineNumber} the current selected line number in the active file

You can also reference environment variables through ${env:Name} (for example, ${env:PATH}). Be sure to match the environment variable name's casing, for example ${env:Path} on Windows.

Below is an example of a custom task configuration that passes the current opened file to the TypeScript compiler.

{ "taskName": "TypeScript compile", "type": "shell", "command": "tsc ${file}", "problemMatcher": [ "$tsc" ] }

部分翻译:(来自互联网)

${workspaceRoot} 当前打开的文件夹的绝对路径+文件夹的名字

${workspaceRootFolderName} 当前打开的文件夹的名字

${file}当前打开正在编辑的文件名,包括绝对路径,文件名,文件后缀名

${relativeFile}从当前打开的文件夹到当前打开的文件的路径

如 当前打开的是test文件夹,当前的打开的是main.c,并有test / first / second / main.c

那么此变量代表的是 first / second / main.c

${fileBasename} 当前打开的文件名+后缀名,不包括路径

如何理解VSCode tasks.json中的替换变量${workspaceFolder}的含义?

${fileBasenameNoExtension} 当前打开的文件的文件名,不包括路径和后缀名

${fileDirname} 当前打开的文件所在的绝对路径,不包括文件名

${fileExtname} 当前打开的文件的后缀名

${cwd} the task runner's current working directory on startup

不知道怎么描述,这是原文解释,

跟 cmd 里面的 cwd 是一样的

${lineNumber} 当前打开的文件,光标所在的行数

更新一个链接:code.visualstudio.com/docs/editor/variables-reference

总结

到此这篇关于浅析VSCode tasks.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等的文章就介绍到这了,更多相关VSCode tasks.json 替换变量内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

标签:各种替换

本文共计675个文字,预计阅读时间需要3分钟。

如何理解VSCode tasks.json中的替换变量${workspaceFolder}的含义?

在编写任务配置时,使用一组预定义的常用变量通常很有用。VS Code 支持在 tasks.json 文件中的字符串内部进行变量替换,并提供了以下预定义变量:${workspaceFolder}。

When authoring tasks configurations, it is often useful to have a set of predefined common variables. VS Code supports variable substitution inside strings in the tasks.json file and has the following predefined variables:

  • ${workspaceFolder} the path of the workspace folder that contains the tasks.json file
  • ${workspaceRootFolderName} the name of the folder opened in VS Code without any slashes (/)
  • ${file} the current opened file
  • ${relativeFile} the current opened file relative to the workspace folder containing the file
  • ${fileBasename} the current opened file's basename
  • ${fileBasenameNoExtension} the current opened file's basename without the extension
  • ${fileDirname} the current opened file's dirname
  • ${fileExtname} the current opened file's extension
  • ${cwd} the task runner's current working directory on startup
  • ${lineNumber} the current selected line number in the active file

You can also reference environment variables through ${env:Name} (for example, ${env:PATH}). Be sure to match the environment variable name's casing, for example ${env:Path} on Windows.

Below is an example of a custom task configuration that passes the current opened file to the TypeScript compiler.

{ "taskName": "TypeScript compile", "type": "shell", "command": "tsc ${file}", "problemMatcher": [ "$tsc" ] }

部分翻译:(来自互联网)

${workspaceRoot} 当前打开的文件夹的绝对路径+文件夹的名字

${workspaceRootFolderName} 当前打开的文件夹的名字

${file}当前打开正在编辑的文件名,包括绝对路径,文件名,文件后缀名

${relativeFile}从当前打开的文件夹到当前打开的文件的路径

如 当前打开的是test文件夹,当前的打开的是main.c,并有test / first / second / main.c

那么此变量代表的是 first / second / main.c

${fileBasename} 当前打开的文件名+后缀名,不包括路径

如何理解VSCode tasks.json中的替换变量${workspaceFolder}的含义?

${fileBasenameNoExtension} 当前打开的文件的文件名,不包括路径和后缀名

${fileDirname} 当前打开的文件所在的绝对路径,不包括文件名

${fileExtname} 当前打开的文件的后缀名

${cwd} the task runner's current working directory on startup

不知道怎么描述,这是原文解释,

跟 cmd 里面的 cwd 是一样的

${lineNumber} 当前打开的文件,光标所在的行数

更新一个链接:code.visualstudio.com/docs/editor/variables-reference

总结

到此这篇关于浅析VSCode tasks.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等的文章就介绍到这了,更多相关VSCode tasks.json 替换变量内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

标签:各种替换