Visual Studio Code 任务的工作目录是什么?根据官方文档, 默认应该是工作区目录,即
workspaceFolder
,但运行一个只执行echo $PWD
的任务,它显示workspaceFolder
的父目录。换句话说,假设有文件路径为dir1/dir2/.vscode/tasks.json
,下面这个简单的任务会输出dir1
,而workspaceFolder
指的是dir2
(实际的工作区目录)。如何才能从workspaceFolder
中运行任务?更改cwd
选项无济于事。tasks.json
:{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "Sample",
"command": "echo PWD=$PWD workspaceFolder=${workspaceFolder}",
"options": {
"cwd": "${workspaceFolder}"
}
}
]
}
执行输出:
> Executing task: echo PWD=$PWD workspaceFolder=/home/ubuntu/dir1/dir2 <
PWD=/home/ubuntu/dir1 workspaceFolder=/home/ubuntu/dir1/dir2
作为补充说明,我正在使用 Remote - SSH 扩展进行远程开发。