Если я запустил новую оболочку CMD из существующей оболочки, новая оболочка наследует существующую среду. Есть ли способ запустить новую оболочку, но она была инициализирована для системных значений по умолчанию и не наследует?
Текущий результат:
B:\>set _test=blooharky
B:\>cmd
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
B:\>set _
_test=blooharky
Желаемый результат:
B:\>set _test=blooharky
B:\>cmd /env=default
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
B:\>set _
Environment variable _ not defined
[обновление] Решение для этого start /i cmd
, как описано dbenham, ниже. Однако это не помогает в ситуации, когда текущая оболочка уже второго поколения. Пример:
d:\>set _
Environment variable _ not defined
d:\>set _test=blooharky
d:\>cmd /k
:: some work done using _test here...
:: ...but after we need a new clean shell:
d:\>start /i cmd
d:\>set _
_test=blooharky
:: uhoh, our shell isn't clean!