Anzahl Ordner auflisten
Hallo zusammen,
ich benötige eine Möglichkeit um aus einer Liste an Datei-Ordner (001,002,003 etc.), nur die Ordner herauszufiltern, die eine bestimmte Datei enthalten.
Dabei kann die Datei unterschiedlich benannt sein, jedoch hat diese immer ein und denselben Ausdruck innerhalb der Dateibezeichnung.
Beispiel:
Datei 1 in Ordner 001 -> Blablabla.0.pdf
Datei 2 in Ordner 002-> TestTest.0.pdf
Datei 3 in Ordner 003 -> Zeichnung.pdf
Datei 4 in Ordner 004 -> Anleitung.bmp
.
.
etc.
Jetzt soll nach dem Ausdruck "0.pdf" gesucht werden und jede Datei mit diesem Ausdruck soll erkannt werden.
Dabei soll als Ergebnis nur eine Textdatei mit der Auflistung der Überordner erstellt werden.
Also:
001
002
Ich hoffe ihr versteht meine Aussage.
Danke und Gruß
MrRoyal
ich benötige eine Möglichkeit um aus einer Liste an Datei-Ordner (001,002,003 etc.), nur die Ordner herauszufiltern, die eine bestimmte Datei enthalten.
Dabei kann die Datei unterschiedlich benannt sein, jedoch hat diese immer ein und denselben Ausdruck innerhalb der Dateibezeichnung.
Beispiel:
Datei 1 in Ordner 001 -> Blablabla.0.pdf
Datei 2 in Ordner 002-> TestTest.0.pdf
Datei 3 in Ordner 003 -> Zeichnung.pdf
Datei 4 in Ordner 004 -> Anleitung.bmp
.
.
etc.
Jetzt soll nach dem Ausdruck "0.pdf" gesucht werden und jede Datei mit diesem Ausdruck soll erkannt werden.
Dabei soll als Ergebnis nur eine Textdatei mit der Auflistung der Überordner erstellt werden.
Also:
001
002
Ich hoffe ihr versteht meine Aussage.
Danke und Gruß
MrRoyal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 489348
Url: https://administrator.de/contentid/489348
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
8 Kommentare
Neuester Kommentar
Powershell:
$basefolder = 'D:\Root'
$log = 'D:\out\log.txt'
$folders = '001','002','003'
$folders | ?{Test-Path "$basefolder\$_\*0.pdf"} | %{$_ | out-file $log -Append}
OMG
https://www.google.com/search?q=Powershell+ausf%C3%BChren
https://www.google.com/search?q=Powershell+ausf%C3%BChren
Muss ich unter $folders alle Ordner manuell angeben? Das wären über 2000 Stück.
Musst du nicht, das geht natürlich, deine Beschreibung oben ließ das leider nicht vermuten:$basefolder = 'D:\Root'
$log = 'D:\out\log.txt'
gci $basefolder -Directory | ?{Test-Path "$($_.Fullname)\*0.pdf"} | %{$_.Name | out-file $log -Append}
Gibt es die Möglichkeit das ganze über VBS zu machen?
Ja
??
Kannst du mir nen Tipp geben?
Const BASEFOLDER = "D:\Basefolder"
Const LOGFILE = "D:\result.txt"
strSearch = "0.pdf"
Set fso = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Wscript.Shell")
Set f = fso.OpenTextFile(LOGFILE,2,True)
For Each folder In fso.GetFolder(BASEFOLDER).SubFolders
For Each file In folder.Files
If LCase(Right(file.Name,Len((strSearch)))) = LCase(strSearch) Then
f.WriteLine folder.Name
Exit For
End If
Next
Next
f.Close
objShell.Run LOGFILE,1,False
Danke
Bidde.
Bitte dann noch als gelöst markieren.