Ich habe einen Ordner, C:\Benutzer\Benutzer1\Desktop\Fotos2019, mit über 100 Unterordnern. In jedem dieser Unterordner befinden sich Fotos, alle mit unterschiedlichen Namen, außer dass 3 Fotos in jedem gleich sind. Ich möchte in der Lage sein, in jedem der Ordner im Verzeichnis 2 Unterordner zu erstellen, einen mit dem Namen „Base“ und einen mit dem Namen „Other“, und die 3 Dateien, die alle gleich sind, in den Ordner „Base“ zu verschieben und alles andere in den Ordner „Other“, ungefähr wie unten.
C:\Users\User1\Desktop\Photos2019
-Folder1/Base/Landscape.png
-Folder1/Base/Portrait.png
-Folder1/Base/Wide.png
-Folder1/Other/*.png
-Folder2/Base/Landscape.png
-Folder2/Base/Portrait.png
-Folder2/Base/Wide.png
-Folder2/Other/*.png
BEARBEITEN: Bisher konnte ich ein Batch-Skript erstellen, das ich in jedem Ordner ausführen kann und das funktioniert. Wenn ich versuche, /r zum Schleifen hinzuzufügen, läuft es zwar weiter, aber es funktioniert überhaupt nicht.
Ich habe;
for %%a in (.) do md "Base"
for %%a in (.) do md "Other"
for %%a in (.) do move "Portrait.png" "Base"
for %%a in (.) do move "Landscape.png" "Base"
for %%a in (.) do move "Wide.png" "Base"
for %%a in (.) do move "*.png" "Other"
Das ist, was ich möchte. Ich versuche, es in jedem Unterordner auszuführen.
Was wäre der beste Weg, dies zu tun? Danke.
Antwort1
Nun, ich bestätige, dass man die Hilfe zum for
Befehl mehrmals lesen muss, um sie vollständig zu verstehen.
Mit einem anfänglichen Baum auf meinem Test-RamDrive A:\
> tree /f a:\
A:\
└───Test
├───Folder1
│ Landscape.png
│ other.png
│ Portrait.png
│ Wide.png
│
└───Folder2
Landscape.png
other.png
Portrait.png
Wide.png
Diese Charge:
:: Q:\Test\2019\08\22\SU_1473860.cmd
@Echo off
set "StartDir=C:\Users\User1\Desktop\Photos2019"
Rem set "StartDir=A:\Test"
set "Base=Landscape.png Portrait.png Wide.png"
CD /D "%StartDir%"
for /d %%D in (*) Do (
MD "%%~fD\Base"
MD "%%~fD\Other"
for %%B in (%Base%) Do Move "%%~fD\%%B" "%%~fD\Base\" >Nul 2>&1
Move "%%~fD\*.png" "%%~fD\Other" >Nul 2>&1
)
ergibt dieses Ergebnis:
> tree /F a:\
A:\
└───Test
├───Folder1
│ ├───Base
│ │ Landscape.png
│ │ Portrait.png
│ │ Wide.png
│ │
│ └───Other
│ other.png
│
└───Folder2
├───Base
│ Landscape.png
│ Portrait.png
│ Wide.png
│
└───Other
other.png