如何在 vs 代码任务中将路径从 C:\... 转换为 /c/...?

How to translate paths from C:\... to /c/... in vs-code tasks?

我想使用 Git Bash 或 MinGW 构建我的程序,所以我有这个构建任务:

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "gcc.exe build active file",
            "command": "gcc",
            "args": ["-g", "${relativeFile}", "-o", "${fileBasenameNoExtension}"],          
            "options": {
                "shell": {
                    "executable": "C:\Program Files\Git\bin\bash.exe",
                    "args": ["-l"]
                },
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
        },      
    ]
}

我有两个问题:

  1. cwd 命令不起作用,因为 ${fileDirname} 处于 Windows 形式 C:\Foo\Bar 并且因为我在 bash我想要 POSIX 形式 /c/Foo/Bar

  2. 我的任务不是在当前终端执行,而是在一个奇怪的 Window 没有显示输出:

    /usr/bin/bash: gcc -g .vscode\tasks.json -o tasks: No such file or directory
    The terminal process terminated with exit code: 127
    
    Terminal will be reused by tasks, press any key to close it.
    

使用扩展名 Command Variable (v0.2.0),您可以添加 Posix 版本的目录变量。

"cwd": "${command:extension.commandvariable.file.fileDirnamePosix}"