1

У меня есть куча команд, использующих системную переменную, и они являются однорядными командами, например так:

set test="blah" && echo %test%

Однако я заметил, что переменная команды set не "установлена" для команд в той же строке. Если я перезапущу вторую команду, она сможет прочитать обновленную переменную. Я могу использовать либо & или &&, и эффекты одинаковы. Это происходит с обоими пакетными файлами и просто помещает его в командную строку.

Как заставить команду set влиять на операторы, следующие за & или &&?

1 ответ1

1

Это потому, что вся командная строка вычисляется сразу, поэтому test переменной разрешается до того, как вы запустите команду set .

Простым решением может быть размещение команд на отдельных строках в пакетных файлах и их запуск.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .