Hallo Leute,
ich habe schon ein Skript der soweit Funktioniert es muss jetzt so geändert werden, das man damit auch rekursive Ordner Strukturen auslesen kann.
Momentan ließt und kopiert das Skript mir nur aus der ersten Eben die Dateien(mit jeweils Ordnername) raus. Ich möchte aber dass das Skript alle unter Ordner durchsucht und die Dateien mit jeweiligen Ordnernamen ins Ziel kopiert.
Hier ein Beispiel, was es auslegen soll.
Ordner1
Unterordner1
Unterordner2
Unterordner3
Unterordner4
File1
Ornder2
Ein kopierte Datei würde dann so heißen:
Ordner1_Unterorder1_Unterordner2_Unterordner3_Unterordner4_File.pdf
Ich hoffe das mir jemand schnell weiter helfen kann. Ich muss ca. 32t Ordner so kopieren, damit die Dateien verarbeitet werden können.
Danke im Voraus.
.....
Thx
zero1de
*Topic verschoben*
ich habe schon ein Skript der soweit Funktioniert es muss jetzt so geändert werden, das man damit auch rekursive Ordner Strukturen auslesen kann.
Momentan ließt und kopiert das Skript mir nur aus der ersten Eben die Dateien(mit jeweils Ordnername) raus. Ich möchte aber dass das Skript alle unter Ordner durchsucht und die Dateien mit jeweiligen Ordnernamen ins Ziel kopiert.
Hier ein Beispiel, was es auslegen soll.
Ordner1
Unterordner1
Unterordner2
Unterordner3
Unterordner4
File1
Ornder2
Ein kopierte Datei würde dann so heißen:
Ordner1_Unterorder1_Unterordner2_Unterordner3_Unterordner4_File.pdf
Ich hoffe das mir jemand schnell weiter helfen kann. Ich muss ca. 32t Ordner so kopieren, damit die Dateien verarbeitet werden können.
Danke im Voraus.
.....
Visual Basic-Quellcode
- Dim objSendMail
- Dim searchfolder
- Dim Filedate
- Dim BasicShare
- Dim DokFolder
- Dim ResultFolder
- Dim SourceShare
- Dim NumberOfFiles
- Dim ConfigPfad
- Dim ConfigFile
- Dim briXSQL
- Dim FSO1
- SourceShare ="N:"'
- BasicShare = "C:\Test"
- ResultFolder = BasicShare & "\Result"
- Set FSO1 = Wscript.CreateObject("scripting.FileSystemObject")
- Set LogFile = FSO1.OpenTextFile(BasicShare & "" & CreateLogFileName(now()) & ".txt", 8, True)
- LogFile.WriteLine("""Nummer"",""Dateiname""")
- LogFile.close
- counter = 1
- If FSO1.FolderExists(SourceShare) then
- Dim myfolder1, myfolderset
- Set myfolder1 = FSO1.GetFolder(SourceShare)
- Set myfolderset = myfolder1.Subfolders
- For Each fl in myfolderset
- ReorgFiles(fl.Name)
- Next
- End If
- Wscript.Echo "Fertig"
- Function ReorgFiles(subfolder)
- Dim FSO, myfolder, myfileset, LogFile, searchfolder
- searchfolder = SourceShare & "" & subfolder
- Dim FileList
- Dim counter
- FileList = ""
- Set FSO = Wscript.CreateObject("scripting.FileSystemObject")
- Set LogFile = FSO.OpenTextFile(BasicShare & "" & CreateLogFileName(now()) & ".txt", 8, True)
- If FSO.FolderExists(searchfolder) then
- Set myfolder = FSO.GetFolder(searchfolder)
- Set myfileset = myfolder.Files
- For Each fl in myfileset
- If (LCase(right(fl.Name,3)) = "pdf" Or LCase(right(fl.Name,3)) = "tif") Then
- FSO.CopyFile searchfolder & "" & fl.Name, ResultFolder & subfolder & "_" & fl.Name
- LogFile.WriteLine(counter & ",""" & fl.Name & """")
- counter = counter + 1
- End If
- Next
- End If
- ReorgFiles = counter
- Set FSO = Nothing
- End Function
- Function CreateLogFileName(Logfiledate)
- CreateLogFileName = year(Logfiledate) & checkFormat(month(Logfiledate)) & checkFormat(day(Logfiledate))
- End Function
- Function checkFormat(datenumber)
- If len(datenumber) < 2 Then
- checkFormat = "0" & datenumber
- Else
- checkFormat = datenumber
- End If
- End Function
Thx
zero1de
*Topic verschoben*
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „zero1de“ ()