Я пытаюсь сделать пакетный сценарий, который будет принимать имена всех подпапок в каталоге в качестве переменных для использования в другом месте.
Часть кода, которая смущает меня:
for /d %%D in (C:\Users\tcsupport\Desktop\Test\*) ^
do (SET test=%%D
echo %%D
echo %test%
echo %test:~32%)
Подпапки в каталоге «Test»: 1, 2 #, 3, ads и ghf.
Это просто случайные имена для тестирования.
Вывод, который я получаю:
C:\Users\tcsupport\Desktop\Test\1
C:\Users\tcsupport\Desktop\Test\ghf
ghf
C:\Users\tcsupport\Desktop\Test\2#
C:\Users\tcsupport\Desktop\Test\ghf
ghf
C:\Users\tcsupport\Desktop\Test\3
C:\Users\tcsupport\Desktop\Test\ghf
ghf
C:\Users\tcsupport\Desktop\Test\ads
C:\Users\tcsupport\Desktop\Test\ghf
ghf
C:\Users\tcsupport\Desktop\Test\ghf
C:\Users\tcsupport\Desktop\Test\ghf
ghf
но я ожидал
C:\Users\tcsupport\Desktop\Test\1
C:\Users\tcsupport\Desktop\Test\1
1
C:\Users\tcsupport\Desktop\Test\2#
C:\Users\tcsupport\Desktop\Test\2#
2#
C:\Users\tcsupport\Desktop\Test\3
C:\Users\tcsupport\Desktop\Test\3
3
C:\Users\tcsupport\Desktop\Test\ads
C:\Users\tcsupport\Desktop\Test\ads
ads
C:\Users\tcsupport\Desktop\Test\ghf
C:\Users\tcsupport\Desktop\Test\ghf
ghf
Кто-нибудь может объяснить, почему это происходит, или придумать способ обойти это?
command-line
batch-file
Катал О Двайер
источник
источник
Ответы:
Просматривая информацию в ссылках, предоставленных Techie007, я нашел свой ответ.
Задержка расширения была проблемой. Изменение кода на следующее решило проблему.
Извините за дублирование вопроса.
источник