Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

In Ordner un Unterordnern nach Dateien mit exater md5 suchen per Batch

Frage Entwicklung Batch & Shell

Mitglied: Alme123

Alme123 (Level 1) - Jetzt verbinden

03.11.2012 um 08:06 Uhr, 2406 Aufrufe, 4 Kommentare

Hallo zusammen,

ich bin auf der Suche nach einer Lösung für folgendes Progblem:

Eine Batch (oder Vbs) soll in einem Ordner (zb. E:\) und allen Unterordnern nach einer oder mehreren Dateien suchen, die die exate md5 haben wie die variable (md5).
Diese Dateien sollen jeweils in seperate Variabeln geschrieben werden.

Ich sitze schon seit Stunden dran, find aber keine Lösung.

Danke im Vorraus,

Alme123
Mitglied: bastla
03.11.2012, aktualisiert um 14:07 Uhr
Hallo Alme123!

Wie weit bist du auf dem Lösungsweg gekommen, wie sieht der derzeitige Stand Deines Batches aus?

Womit sollen die md5-Summen ermittelt werden?

Und: Wozu soll schon wieder das Pseudo-Array ("separate Variablen") gut sein?

Außerdem: Wäre es nicht sinnvoll, eine Vorauswahl der Dateien zu treffen (zB anhand ihrer Größe)?
Eine Alternative zum Batch wäre zB ein "Duplikate-Sucher" wie CloneSpy - die zu vergleichende Datei alleine in einen Pool und die zu durchsuchenden Verzeichnisse in den anderen Pool geben ...

Grüße
bastla
Bitte warten ..
Mitglied: Alme123
03.11.2012 um 14:27 Uhr
Hi bastla,

- Die md5 Summen werden mit einer datei ermittelt:

Die sytnax sieht so aus: md5.exe datei.exe
Ausgabe: Md5Summe

- Das Pseudo-Array ist eigentlich egal, es müssten dann die Dateien in einer for schleife gesucht werden, weil ein seperater Schritt durchgeführt werden muss (call :bla)

- Fortschritt: 0,0001% (= 0)

- Eine Vorrauswahl, wäre nur teilweise sinnvoll, weil es immer verschiedene sind (min. 60 Bytes)

- CloneSpy: Nein es muss md5 sein. Sonst geht es nicht.

Alme123
Bitte warten ..
Mitglied: bastla
03.11.2012, aktualisiert um 15:25 Uhr
Hallo Alme123!
Eine Vorrauswahl, wäre nur teilweise sinnvoll, weil es immer verschiedene sind (min. 60 Bytes)
Na ja, dann muss eben immer für jede Datei die MD5-Summe berechnet werden (was das hinsichtlich der Performance bedeutet, merkst Du ja dann ohnehin) ...

Sinnvoll wäre es aber wohl, wenn auch noch nach unterschiedlichen MD5-Summen gesucht werden soll, vorweg einfach für alle Dateien den Wert zu ermitteln und in einer Textdatei zu speichern, sodass dann nur noch per "findstr" diese Datei durchsucht werden müsste ...

... anyhow: Soferne Du zumindest auf den Datentyp (.exe) einschränken kannst, sollte das (ungetestet) etwa so gehen:
01.
@echo off & setlocal 
02.
set "Basis=E:\" 
03.
set "Typ=exe" 
04.
set "MD5=0123456789abcdef0123456789abcdef" 
05.
 
06.
for /r "%Basis%" %%i in (*.%Typ%) do ( 
07.
    for /f %%m in ('C:\Tools\md5.exe "%%i"') do if %%m==%MD5% ( 
08.
        echo Gefunden: "%%i" 
09.
        REM Verarbeitung kann von hier aus aufgerufen werden 
10.
11.
)
Annahme war, dass die Ausgabe von "md5.exe" tatsächlich nur aus der MD5-Summe besteht.

Grüße
bastla
Bitte warten ..
Mitglied: Alme123
03.11.2012 um 15:34 Uhr
Hi bastla,

das ist genau das Richtige!

Vielen, vielen Dank!
Du hilfst bei solchen Sachen am besten weiter!

Alme123

[Theard Closed]
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...