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-Key: 263056

Url: https://administrator.de/contentid/263056

Printed on: April 19, 2024 at 20:04 o'clock

Member: emeriks
emeriks Feb 11, 2015 at 12:42:56 (UTC)
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.
Mitglied: 114757
Solution 114757 Feb 11, 2015, updated at Feb 12, 2015 at 12:09:55 (UTC)
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
Member: Gurkenhobel
Gurkenhobel Feb 11, 2015, updated at Feb 12, 2015 at 12:09:27 (UTC)
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 !