Nur Dateien mit gleichem Dateistring in einem Ordner zählen
Hallo Profis,
hab da mal ne Frage: Ich möchte die Dateianzahl in einem Verzeichnis per Batch auslesen. Das hab ich hinbekommen.
Jetzt würde ich das ganze gerne noch verfeinern, indem ich nur Dateien auslesen lasse, die einen bistimmten Dateistring im Namen
haben. Die Dateiendung ist unterschiedlich, spielt aber keine Rolle.
Beispiel: In einem Ordner liegen folgende Daten:
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.jpg
05032009AF-002.jpg
05032009AF-002.jpg
05032009AF-002.jpg
05032009KU-006.pdf
05032009KU-007.pdf
05032009KU-008.pdf
Ich möchte nun nur die Dateien mit dem Teilstring "AF" gezählt bekommen, Dateiendung ist egal, also müsste das Ergebnis "8 Dateien" sein.
Soweit bin ich mal:
@echo off
set /p laufvar=Laufwerksbuchstabe angeben:
set /p verzvar=Ordner angeben:
set "ord=%laufvar%:\%verzvar%"
if exist %laufvar%:\%verzvar% goto :los
if not exist %laufvar%:\%verzvar% goto :meldung
:Los
FOR /F "delims= " %%i in ('Dir %ord% /s /A-D^|find "Datei(en)"') do set nrord=%%i
echo %nrord% Dateien
pause
goto End
:meldung
echo Verzeichnis oder Laufwerk nicht gefunden
sleep 5
:end
Wie kann ich den Find-Befehl dazu bringen, gewünschten String zu suchen?
Wäre Toll wenn jemand eine Lösung dazu hätte.
Schöne Grüße und Dank in Voraus
Chainsaw
hab da mal ne Frage: Ich möchte die Dateianzahl in einem Verzeichnis per Batch auslesen. Das hab ich hinbekommen.
Jetzt würde ich das ganze gerne noch verfeinern, indem ich nur Dateien auslesen lasse, die einen bistimmten Dateistring im Namen
haben. Die Dateiendung ist unterschiedlich, spielt aber keine Rolle.
Beispiel: In einem Ordner liegen folgende Daten:
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.pdf
05032009AF-002.jpg
05032009AF-002.jpg
05032009AF-002.jpg
05032009AF-002.jpg
05032009KU-006.pdf
05032009KU-007.pdf
05032009KU-008.pdf
Ich möchte nun nur die Dateien mit dem Teilstring "AF" gezählt bekommen, Dateiendung ist egal, also müsste das Ergebnis "8 Dateien" sein.
Soweit bin ich mal:
@echo off
set /p laufvar=Laufwerksbuchstabe angeben:
set /p verzvar=Ordner angeben:
set "ord=%laufvar%:\%verzvar%"
if exist %laufvar%:\%verzvar% goto :los
if not exist %laufvar%:\%verzvar% goto :meldung
:Los
FOR /F "delims= " %%i in ('Dir %ord% /s /A-D^|find "Datei(en)"') do set nrord=%%i
echo %nrord% Dateien
pause
goto End
:meldung
echo Verzeichnis oder Laufwerk nicht gefunden
sleep 5
:end
Wie kann ich den Find-Befehl dazu bringen, gewünschten String zu suchen?
Wäre Toll wenn jemand eine Lösung dazu hätte.
Schöne Grüße und Dank in Voraus
Chainsaw
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 110724
Url: https://administrator.de/forum/nur-dateien-mit-gleichem-dateistring-in-einem-ordner-zaehlen-110724.html
Ausgedruckt am: 23.12.2024 um 04:12 Uhr
2 Kommentare
Neuester Kommentar
Servus,
das meiste hast du doch schon gehabt - du wolltest deine "Erweiterung" nur an der "falschen" Stelle (find) anbringen
Gruß
das meiste hast du doch schon gehabt - du wolltest deine "Erweiterung" nur an der "falschen" Stelle (find) anbringen
@echo off
set /p laufvar=Laufwerksbuchstabe angeben:
set /p verzvar=Ordner angeben:
set /p string=Teilstring angeben:
set "ord=%laufvar%:\%verzvar%"
if exist %laufvar%:\%verzvar% goto :los
if not exist %laufvar%:\%verzvar% goto :meldung
:Los
FOR /F "delims= " %%i in ('Dir %ord%\*%string%* /s /A-D^|find "Datei(en)"') do set nrord=%%i
echo %nrord% Dateien
pause
goto End
:meldung
echo Verzeichnis oder Laufwerk nicht gefunden
sleep 5
:end
pause
Gruß