Примечание
Мне пришлось удалить как две части этого поста, потому что переполнение стека продолжало интерпретировать его как код, когда это не так, и это не позволяло мне публиковать сообщения, я просто сделаю скриншот того, как должен выглядеть пост и разместите это здесь . Прочитайте это вместо этого.
Резюме
Я наконец-то пытался научиться использовать задачи VSCode и поэтому скопировал первый пример задачи из здесь и создал скрипт оболочки в scripts / test.sh, который содержит просто «echo foo». Я также закомментировал альтернативный скрипт windows, потому что я использую исключительно WSL / Bash. Всякий раз, когда я запускаю задачу, я получаю сообщение об ошибке «Процесс терминала завершен с кодом выхода: 1», который не помогает.
Тестирование
Я провел различные тесты и понятия не имею, почему это не работает.
Доказательство того, что задача находится в правильном каталоге и в WSL
Сначала я подумал, что, возможно, задача не выполняется в WSL или что каталоги не синхронизированы, поэтому я изменил команды, чтобы посмотреть, что произойдет.
Сначала я изменил его на:
"command": "pwd",
и вывод был "/mnt/f/.../.../tmp/tmp.1BitOIA78E" (... для какого-то произвольного пути), поэтому ясно, что я пришел к выводу, что я работал на WSL и справа дорожка.
Проверка выполнения сценария
Затем я подумал, что, возможно, скрипт, который я пытаюсь запустить, не является исполняемым или что-то подобное, поэтому я изменил команду на:
"command": "stat ./scripts/test.sh",
и я получил следующий вывод, который показывает, что файл существует, он исполняемый и может быть доступен через "./scripts/test.sh" из любого каталога, в котором задано задание при создании
Я запускаю задачу, набирая ctrl-shift-P, чтобы открыть меню, выбираю «выполнить задачи», а затем выбираю «Моя первая задача».
Примечание: я не думаю, что это проблема с настройками. Настройки рабочего пространства не настроены (потому что это только я тестирую), и на всякий случай вы можете найти мои текущие пользовательские настройки здесь , которые я обновил непосредственно перед публикацией.
Ожидания
Я бы тоже хотел:
- Кто-то, кто скажет мне, как я могу получить доступ к журналу stderr и stdout оболочки при запуске, чтобы я мог получить действительно полезную информацию о том, почему это происходит.
- Кто-то, кто скажет мне, почему я могу прекрасно выполнить сценарий вне задачи, но внутри задачи он полностью завершается неудачей.
Также следует отметить, что сценарий здесь не является проблемой. Если оставить его пустым, терминал не остановится.