megaloman,
Foreigner,
Iska, тут проблема теоретическая. Поскольку команда, результат выполнения которой разбирается с помощью "
for" (в данном случае этой командой является
Код:
"%Arc%" a "1 2 3.rar"
),
выполняется в новой копии интерпретатора командной строки, запущенной с ключом "
/C" (то есть командная строка запуска данного процесса выглядит так:
Код:
"C:\Windows\System32\cmd.exe" /c "C:\Program Files\WinRar\rar.exe" a "1 2 3.zip"
),
то и обработка символов кавычек ведётся командой "
CMD" и подчиняется правилам из справки по команде "
CMD", что и приводит к ошибке.
Выход из этой ситуации такой:
Код:
for /f "usebackq delims=" %%i in (`""%Arc%" a "1 2 3.zip""`) do echo %%i
,
где "подразборная" команда будет запускаться командной строкой
Код:
"C:\Windows\System32\cmd.exe" /c ""C:\Program Files\WinRar\rar.exe" a "1 2 3.zip""
.