gurkenhobel
Goto Top

VBS: Unterordner gleichen Namens verschieben

Hallo Gemeinde,

Ich habe auf einem Laufwerk 12 Unterordner (Januar ... Dezember) die wiederum jeweils sieben Unterordner (Montag ... Sonntag) umfassen - also insgesamt 12 + (12*7) = 96 Unterordner.
Wie kann ich die Unterordner (mit Tagesnamen) gleichen Namens "zusammenschieben", d.h. der Inhalt des Unterordners "Januar\Montag" wird mit den restlichen 11 Montags-Ordnern in den (neu zu errichtenden) Unterordner "Montag" verschoben, die Inhalte aller zwölf "Dienstags"-Unterordner in den neuen Unterordner "Dienstag" usw. Am Ende müssten dann 12 leere Monats-Unterordner und sieben gefüllte Tages-Ordner bestehen.

Wie kann ich das in VBS bewerkstelligen ?

Content-ID: 263056

Url: https://administrator.de/forum/vbs-unterordner-gleichen-namens-verschieben-263056.html

Ausgedruckt am: 06.01.2025 um 23:01 Uhr

emeriks
emeriks 11.02.2015 um 13:42:56 Uhr
Goto Top
Hi,
Wie kann ich das in VBS bewerkstelligen ?
Ja sicher.

Wenn das ne einmalige Sache ist, dann geht das aber auch ganz einfach in der CMD machen
for %m in (Januar Februar März ....) do for %d in (Montag Dienstag ...) do move /Y X:\%m\%d X:\Ziel\%d
Das sollte doch gehen?

Da musst Du natürlich noch die Monate und Wochentage vervollständigen, is klar. Und X:\ sowie X:\Ziel musst Du auch an Deine Gegebenheiten anpassen.
Wenn das in eine Batch soll, dann müssen %m und %d als %%m bzw. %%d geschrieben werden.

E.
114757
Lösung 114757 11.02.2015, aktualisiert am 12.02.2015 um 13:09:55 Uhr
Goto Top
Const FOLDER_YEARS = "D:\Temp"  
Const FOLDER_DAYS_TARGET = "D:\Tagezusammengefasst"  
Set fso = CreateObject("Scripting.Filesystemobject")  
For Each dayfolder In fso.GetFolder(FOLDER_YEARS).SubFolders
	For Each f In dayfolder.SubFolders
		f.Copy FOLDER_DAYS_TARGET & "\",True  
		f.Delete True
	Next
Next
Gruß jodel32
Gurkenhobel
Gurkenhobel 11.02.2015, aktualisiert am 12.02.2015 um 13:09:27 Uhr
Goto Top
@emeriks
Danke, aber es kommt immer die Fehlermeldung kann syntaktisch an dieser Stelle nicht verarbeitet werden., unabhängig davon, ob ich den Pfad (>8 Zeichen pro Ordner) in Hochommas setze oder %d oder %%d verwende.
Außerdem <code type=plain">Wenn das ne einmalige Sache ist, dann geht das aber auch ganz einfach in der CMD machen, ist es keine einmalige Sache und deswegen dachte ich eher an VBS.

@114757
Das Script läuft wie gewollt und "schiebt" auch andere Ordner zusammen, die den gleichen Namen tragen, z.B. den Inhalt von Landschaft\Wald und Australien\Wald nach Wald. Danke !