В моем пакетном файле я пытаюсь вызвать переменную после подчеркивания. Но переменная не распознается, если она добавлена после подчеркивания.

set /p X=Folder name:%=%
mkdir Delta_%X%

Таким образом, windows создавал каталог с именем Delta_ вместо Delta_ {Имя папки, предоставленное пользователем для X} для приведенного выше кода.

Чтобы обойти эту ситуацию, я назначил подчеркивание другой переменной и назвал обе переменные, и она отлично работает. Хотел проверить, есть ли другой (правильный) способ решения этой проблемы.

Временное решение:

set /p X=Folder name:%=%
set Z=_
mkdir Delta%Z%%X%

1 ответ1

1

Нет проблем с добавлением подчеркивания, используя любой описанный вами метод. Тем не менее, вы также можете добавить подчеркивание к вашей переменной %X% следующим образом:

set /p X=Folder name: 
set X=_%X%

или вы можете добавить Delta_ следующим образом:

set X=Delta_%X%

Конечно, вы можете не захотеть делать это, если вам нужно сохранить фактический пользовательский ввод для дальнейшего использования. Если это так, вы можете сделать это вместо этого:

set /p X=Folder name: 
set Y=Delta_%X%
echo user entered: %X%
mkdir %Y%

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