Eu tenho uma pasta principal, com muitas subpastas dentro, por exemplo
C:\Main Folder\Bob James
C:\Main Folder\John Smith
E para cada uma dessas pastas quero adicionar a pasta Membros da Família
Eu tentei usar
FOR /d %A IN ("C:\Main Folder\*") DO mkdir %A\"Family Members"
o que não funcionou, não funcionou
FOR /d %A IN (C:\"Main Folder"\*) DO mkdir %A\"Family Members"
mas quando eu fiz
FOR /d %A IN (C:\Test\*) DO mkdir %A\"Family Members"
funciona, há alguma maneira de fazer isso funcionar com os espaços em branco?
Responder1
Você estava tão perto, basta mover um pouco a citação :-)
FOR /d %A IN ("C:\Main Folder\*") DO mkdir "%A\Family Members"
O %A
deve ser citado porque contém um espaço. Quando seu loop é executado mkdir %A\"Family Members"
e %A contém C:\Main Folder\Bob James
, o comando se torna mkdir C:\Main Folder\Bob James\"Family Members"
. Isso tenta criar 3 pastas, porque o bit inicial não está entre aspas:
C:\Main
Folder\Bob
James\"Family Members"