eu-admin
Goto Top

Dateien mit bestimmten Kriterien suchen

Das Durchsuchen von Laufwerken nach Dateien mit bestimmten Kriterien und erstellen einer Liste im csv-Format.

Hallo Alle,

Ich muß auf unseren Servern Dateien
suchen, die

1. Älter als 31.12.2004 sind

oder

2. die Endungen .mp3 .wav .wmv .mpeg usw.
haben.

Diese Dateien sollen dann mit Ihrer
Größe, dem Ablageort und dem
letzten Änderungsdatum in einer Liste
aufgeführt werden.

Könnt Ihr mir da vielleicht weiterhelfen?
Vielen Dank!!

eu_admin(Christian)

Content-ID: 50988

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

Ausgedruckt am: 05.11.2024 um 07:11 Uhr

Dani
Dani 07.02.2007 um 18:41:24 Uhr
Goto Top
Hi,
also zu 2.) kann ich dir mal weiterhelfen.

So würde der Schnipsel aussehen:
@echo off & setlocal

C:
cd Daten

for /f "skip=5" %%a in ('dir "*.wav *.mpeg"') do echo %%a >> C:\log.txt  
Ist leider nicht getestet! Sry...Es wird auch nur in diesem Fall C:\Daten durchsucht => Keine Unterordner!! Diese können mit "/s" beigefügt werden.


Gruß
Dani
Biber
Biber 07.02.2007 um 19:54:29 Uhr
Goto Top
Moin eu_admin,

für diesen Zweck gibt es auch ein paar fertige Utilities.
Da hat bestimmt der eine oder die andere im Forum noch Freeware-Tipps.

Aber auch mit native Batch und gesundem Menschenverstand bekommst Du es hin.
Sogar vom CMD-Prompt.

Mimik: Alle Dateien der geforderten Dateitypen unterhalb eines Start-Verzeichnisses mit einer FOR /R-Anweisung suchen lassen und alle ausgeben lassen, die eine Jahreszahl < 2005 haben.

Sieht vom CMD-Prompt so aus: (ich habe *.txt und *.doc genommen zum Testen)
(=19:45:42  D:\temp=)
>for /r d:\temp %i in (*.txt *.doc) do @for /f "tokens=3 delims=. " %j in ("%~ti") do @if [%j] lss [2005] @echo %i;%~zi;%~ti  
d:\temp\robocopy.doc;78848;02.12.1999 11:52
d:\temp\Backup1\netuse.txt;308;23.11.2004 08:51
d:\temp\Backup1\netuseDez08.txt;999;08.12.2004 13:17
d:\temp\Backup1\Admincopy\Vorlagen\winword.doc;4608;12.08.2004 14:32
d:\temp\Backup1\Admincopy\Vorlagen\winword2.doc;1769;12.08.2004 14:32
d:\temp\Backup1\tsprofil\Anwendungsdaten\Microsoft\Internet Explorer\brndlog.txt;10166;13.12.2004 14:03
d:\temp\Backup1\tsprofil\Cookies\xxxx@zzziap05.yyy.xx[1].txt;506;09.12.2004 17:03
d:\temp\head\doc\head.txt;622;27.05.2002 19:43
d:\temp\Herber\vbePLUSde\Liesmich.txt;1139;17.03.2001 09:34
d:\temp\protektorlogon\putinenv.txt;4069;04.04.2000 22:19

(=19:45:43  D:\temp=)

Als Batch und ein bissi formatiert sähe es so aus:
:: ----snipp FindAllOlder2005.bat
@for /r d:\temp %%i in (*.txt *.doc) do @(
      for /f "tokens=3 delims=. " %%j in ("%%~ti") do @(  
          if [%%j] lss [2005] @echo %%i;%%~zi;%%~ti
))
:: ----snapp FindAllOlder2005.bat
Und wenn Du Startverzeichnis, Jahreszahl und Datei-Typen als Parameter mitgeben willst:
:: ----snipp FindAllOlder.bat mit Parametern [1]=StartDir [2]=Jahr [3....9] Wildcards
@for /r %1 %%i in (%3 %4 %5 %6 %7 %8 %9 ) do @(
      for /f "tokens=3 delims=. " %%j in ("%%~ti") do @(  
          if [%%j] lss [%2] @echo %%i;%%~zi;%%~ti
))
:: ----snapp FindAllOlder.bat

Diesen [wie immer ungetesteten] FindAllOlder.bat kannst Du dann z.B. aufrufen mit
FindAllOlder X:\UnserArchiv 2005 *.mp3 *.wmv *.mpeg
-oder, nach dem Testen und Anpassen der Formatierung etc.-
FindAllOlder X:\UnserArchiv 2005 *.mp3 *.wmv *.mpeg >UnserArchiv-FilesOlder2005.txt

HTH
Biber
eu-admin
eu-admin 15.02.2007 um 11:05:57 Uhr
Goto Top
Hallo Ihr beiden,

vielen Dank für Eure Unterstützung! Es hat mir sehr geholfen.

eu_admin