Problemas ao tentar executar um script bash como uma tarefa no VSCode (1.38.1) no macOS (10.14.6). Usando o terminal integrado, o script é executado conforme o esperado. No entanto, quando o executo como uma tarefa VSCode, o shell de execução é aparentemente diferente e não tenho certeza de como configurá-lo.
A tarefa é a seguinte:
"tasks": [
{
"label": "List files",
"type": "shell",
"command": "source ./scripts/test_ls.sh",
"problemMatcher": []
}
]
E o script test_ls.sh é simplesmente:
#!/bin/bash
echo "${BASH_VERSION}"
ls
Configurei o terminal integrado da seguinte forma (em settings.json):
"terminal.integrated.shell.osx": "/bin/bash",
Quando executo manualmente a partir do terminal integrado (usando um dos comandos 'bash' ou 'source'), ele indica a versão do bash como 3.2.57(1)-release e lista os arquivos conforme esperado, mas se eu executar a tarefa acima o shell fornece a seguinte saída:
> 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
o que levanta a questão: se não estiver executando o script usando o bash, o que ele está usando? E como isso pode ser configurado?