Я пытаюсь сделать пакетный скрипт, который будет принимать имена всех подпапок в каталоге в качестве переменных для использования в другом месте.
Часть кода, которая меня смущает:
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
Кто-нибудь может объяснить, почему это происходит, или придумать способ обойти это?