n1ro°
RU

Ошибки и коды · Инструкция

VS Code task не запускает команду с пробелами: quoting в tasks.json

Одна строка shell-команды проходит через конкретный shell и его правила кавычек. Ошибка часто воспроизводится только на

Редакция N1RO · Проверено

Короткий ответ

Для shell task лучше разделять `command` и `args`: VS Code применяет quoting к аргументам с пробелами. Если нужен точный контроль, задайте аргумент объектом с `quoting: strong|weak|escape`.

Что делать

  1. Определите shell: Посмотрите terminal profile/OS, на котором task реально выполняется.
  2. Разделите command и args: Вместо склеенной строки задайте `"command": "tool"`, `"args": ["path with spaces"]`.
  3. Для специального случая: Используйте literal arg с `value` и `quoting`.
  4. Сравните вручную: Запустите итоговую команду в том же shell.
  5. Проверьте cross-platform: Если task общий для ОС, используйте platform-specific overrides только там, где синтаксис различается.

Важно

Не экранируйте одинаково для bash, PowerShell и cmd: правила различаются.

Что учитывать

Не экранируйте одинаково для bash, PowerShell и cmd: правила различаются.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Integrate with External Tools via Tasks). Пример и формулировки — редакция N1RO на 2026-09-17.