Как завершить однострочную команду CMD «DO» (ПЕРЕСМОТРЕНО) - PullRequest
0 голосов
/ 27 октября 2018

У меня есть следующая строка кода CMD (не пакетная):

for /l %A in (1,1,2) do (echo "in loop") & echo "out loop; this should only be echoed once"

По сути, эти скобки (по крайней мере, я так думал) - это то, что должно было завершить код цикла и запустить новую команду ВНЕ от команды do; однако этого, похоже, не происходит.

Если бы кто-то мог сказать мне, как завершить оператор do для выполнения последней команды echo индивидуально после цикла, а не на каждой итерации цикла, сохраняя при этом однострочность, было бы очень полезно .

Спасибо, что уделили время.

1 Ответ

0 голосов
/ 27 октября 2018

Вся командная строка FOR должна быть заключена в круглые скобки, и затем к команде & может быть добавлена ​​дополнительная команда ECHO , которая должна выполняться безоговорочно после FOR петля.

Командная строка:

(for /L %A in (1,1,2) do @echo in loop) & @echo out loop; this should only be echoed once

Пакетный файл:

@echo off
(for /L %%A in (1,1,2) do echo in loop) & echo out loop; this should only be echoed once

Отдельную команду echo in loop, выполняемую for, не нужно заключать в скобки.

См. Также Как интерпретатор сценариев команд Windows (CMD.EXE) анализирует сценарии?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...