在 macOS (10.14.6) 上的 VSCode (1.38.1) 中尝试将 bash 脚本作为任务运行时遇到问题。使用集成终端,脚本按预期运行。但是,当我将其作为 VSCode 任务运行时,执行的 shell 显然不同,我不确定如何配置它。
任务如下:
"tasks": [
{
"label": "List files",
"type": "shell",
"command": "source ./scripts/test_ls.sh",
"problemMatcher": []
}
]
test_ls.sh 脚本非常简单:
#!/bin/bash
echo "${BASH_VERSION}"
ls
我已将集成终端配置如下(在settings.json中):
"terminal.integrated.shell.osx": "/bin/bash",
当我手动从集成终端运行时(使用命令“bash”或“source”),它会将 bash 版本声明为 3.2.57(1)-release,然后按预期列出文件,但如果我运行上述任务,shell 会给出以下输出:
> Executing task in folder sdc1-scoring: source ./scripts/test_ls.sh -r <
3.2.57(1)-release
./scripts/test_ls.sh: line 3: ls: No such file or directory
The terminal process terminated with exit code: 127
这引出了一个问题,如果它不是使用 bash 运行脚本,那么它使用什么?如何配置它?