Konfigurieren von VSCode-Aufgaben unter macOS

Konfigurieren von VSCode-Aufgaben unter macOS

Beim Versuch, ein Bash-Skript als Task in VSCode (1.38.1) unter macOS (10.14.6) auszuführen, tritt ein Problem auf. Über das integrierte Terminal wird das Skript wie erwartet ausgeführt. Wenn ich es jedoch als VSCode-Task ausführe, ist die ausführende Shell anscheinend anders und ich bin mir nicht sicher, wie ich sie konfigurieren soll.

Die Aufgabe lautet wie folgt:

  "tasks": [
    {
      "label": "List files",
      "type": "shell",
      "command": "source ./scripts/test_ls.sh",
      "problemMatcher": []
    }
  ]

Und das Skript test_ls.sh lautet einfach:

#!/bin/bash
echo "${BASH_VERSION}"
ls

Das integrierte Terminal habe ich wie folgt konfiguriert (in settings.json):

    "terminal.integrated.shell.osx": "/bin/bash",

Wenn ich es manuell vom integrierten Terminal aus ausführe (mit einem der Befehle „bash“ oder „source“), wird die Bash-Version als 3.2.57(1)-Release angegeben und die Dateien werden wie erwartet aufgelistet. Wenn ich jedoch die obige Aufgabe ausführe, gibt die Shell die folgende Ausgabe aus:

> 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

was die Frage aufwirft: Wenn das Skript nicht mit Bash ausgeführt wird, was verwendet es dann? Und wie kann dies konfiguriert werden?

verwandte Informationen