Как я могу добавить задачу, которая запускает конкретный .bat, который находится в папке открытого исходного файла? - PullRequest
0 голосов
/ 21 декабря 2018

Я устанавливаю свою первую задачу в VS Code.Я хочу запустить файл .bat.Он находится в той же папке, что и исходный код, который открывается в VS Code.

./source1/code1.cpp
./source1/code2.cpp
./source1/test.bat


./source2/code1.cpp
./source2/code2.cpp
./source2/test.bat

Так что, когда я работаю над ./source2/code1.cpp, я хочу запустить задачу на ./source2/test.bat

Ошибка, с которой я сталкиваюсь, заключается в том, что VS Code пытается запустить test.bat в папке tasks.json.

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Build",
            "type": "shell",
            "group":"build",
            "options": {
                "cwd":"${fileDirname}"
            },
            "windows": {
                "command": "call ${cwd}\\test.bat"

        }

    } 
 ]

Вывод ошибки терминала:

+ CategoryInfo          : ObjectNotFound: (call:Stri
   ng) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

> Executing task: call X:\Folder\To\tasks.json\test.bat <

1 Ответ

0 голосов
/ 21 декабря 2018

Это работает для меня:

{
   "label": "Build",
   "type": "shell",
   "group":"build",
   "windows": {
      "command": "${fileDirname}\\test.bat"
   }
}

Будет вызван файл test.bat, который находится в том же каталоге, что и текущий открытый файл.

...