Jump to content

Script um Pfadlänge zu ermitteln


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hi,

 

ich suche nach einem Script um die Pfadlängen zu ermitteln.

Ich möchte gerne einen Pfad angeben, z.B. C:\ und das mir das Script dann alle Dateien ausgeben, deren Pfadlänge 30 Zeichen (inkl. der Ordner usw.) ausgibt.

 

Wie kann ich das mittels VBS lösen?

 

Grüße

Chris

Geschrieben

Like this?

Fängt im Beispiel mit C:\ an und schreibt für alle Unterverzeichnisse und Dateien, die Namen mit Pfad und Länge in eine CSV-Datei C:\FileLen.csv.

 

Set WshShell = WScript.CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")

Set txtOut = objFSO.CreateTextFile("C:\FileLen.csv")
FoldersRec "C:\"

Sub FoldersRec(Startfolder)

Set objFolder = objFSO.GetFolder(Startfolder)
Set colSubfolders = objFolder.Subfolders

For Each objSubfolder in colSubfolders
 FoldersRec(objSubfolder)
Next

for each file in objFolder.Files
 strZeile = file & ";" & len(file)
 txtOut.WriteLine strZeile 
next

End sub

Geschrieben

Vielen Dank für deine Antwort.

Im Prinzip funktioniert das Script, jedoch bricht es irgendwann mit der Meldung "Laufzeitfehler in Microsoft VBScript: Der Pfad wurde nicht gefunden." ab. Ich vermute mal es hängt an einem sehr großen Verzeichnis. Hast du eine Idee wie ich das lösen kann? Geht's vielleicht auch mit der Powershell?

 

Grüße

Chris

Geschrieben

Hi,

 

in der CSV steht nichts verdächtiges. Ich habe diese noch dahingehend geändert, dass nur Einträge in die CSV geschrieben werden, bei denen die Verzeichnislänge 250 Zeichen übersteigt.

Schade das er mit den über 256 Probleme hat, denn genau diese wollte ich hiermit finden.

Jetzt muss ich wohl ein neues Netzlaufwerk verbinden, das tiefer in die Ordnerstruktur geht, um die ganz langen zu finden...

  • 2 Wochen später...
Geschrieben

D:\somefolder\somesubfolder\somefile.extension 259 Actual limit since null terminator always uses up one character.

 

Innerhalb ofs bzw. windows können keine längeren Pfade bearbeitet werden.

Im Script können längere Pfade nicht gelesen werden, es kommt auch definitiv keine Fehlermeldung. :mad:

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...