Hinzufügen von Ordnern zu jedem Unterordner, wenn Leerzeichen vorhanden sind

Hinzufügen von Ordnern zu jedem Unterordner, wenn Leerzeichen vorhanden sind

Ich habe einen Hauptordner mit vielen Unterordnern darin, z. B.

C:\Main Folder\Bob James
C:\Main Folder\John Smith

Und für jeden dieser Ordner möchte ich den Ordner Familienmitglieder hinzufügen

Ich habe versucht,

FOR /d %A IN ("C:\Main Folder\*") DO mkdir %A\"Family Members"

das hat nicht funktioniert, nicht

FOR /d %A IN (C:\"Main Folder"\*) DO mkdir %A\"Family Members"

aber als ich es tat

FOR /d %A IN (C:\Test\*) DO mkdir %A\"Family Members"

es funktioniert. Gibt es Möglichkeiten, dies mit den Leerzeichen zum Laufen zu bringen?

Antwort1

Du warst so nah dran, verschiebe das Zitat einfach ein wenig :-)

FOR /d %A IN ("C:\Main Folder\*") DO mkdir "%A\Family Members"

Das %Amuss in Anführungszeichen gesetzt werden, da es ein Leerzeichen enthält. Wenn Ihre Schleife ausgeführt wird mkdir %A\"Family Members"und %A enthält C:\Main Folder\Bob James, wird der Befehl zu mkdir C:\Main Folder\Bob James\"Family Members". Dies versucht, 3 Ordner zu erstellen, da das führende Bit nicht in Anführungszeichen steht:

C:\Main
Folder\Bob
James\"Family Members"

verwandte Informationen