marcoti

Hashprüfung per Batch für Backup

Hallo,

ich habe folgendes Problem:

Ich nutze zur Zeit ein Batchfile zur Datensicherung, welches Dateien und Ordner aus einer Textdatei (z.B.: liste.txt) nutzt und diese dann per WinRAR (rar.exe) packt, "verschlüsselt" und per net use / xcopy auf einen anderen Server im Netzwerk sichert. Dies erfolgt bisher indem einfach alle Dateien aus der Liste gesichert werden und die jeweils "zu alten" Sicherungen nach einer gewissen Zeit wieder gelöscht werden.

Die "liste.txt" ist wie folgt aufgebaut:

> Beginn liste.txt

LW:\Ordner
LW:\Ordner\Datei.txt
LW:\Ordner\Ordner\Datei.txt

> Ende liste.txt

Nun würde ich gern das Batchfile um die folgende Möglichkeit ergänzen:
Die Dateien aus der Liste sollen mit einer zweiten Liste (vergleich.txt) verglichen werden, in welcher die jeweiligen Dateien ein Hash abgespeichert ist (evtl. ist die Prüfung auch einfach mit dem Dateidatum möglich?). Einen Dateivergleich per "fc" möchte ich somit vermeiden.
Sollten sich der gespeicherte Hash und der neu errechnete unterscheiden oder die Datei noch nicht gelistet sein, so möchte ich diese zur Sicherung an WinRAR übergeben.

Vllt. könnte man die "vergleich.txt" ja ähnlich wie bei "FCIV.exe" (Microsoft File Checksum Integrity Verifier) aufbauen:

> Beginn vergleich.txt

HASH LW:\Ordner\Ordner\Datei.txt
HASH LW:\Ordner\Datei.txt

> Ende vergleich.txt

Da ich nun mittlerweile seit knapp 4 Tagen nach einem passenden Hash-Tool bzw. einer anderen Möglichkeit suche, wie man dies umsetzen kann bin ich kurz vor dem Verzweifeln.
Und da ich im Batchskripting nicht sonderlich versiert bin hoffe ich nun, dass mir einer der professionelleren User hier evtl. weiterhelfen kann.

Gruß,

Marco

P.S.: Versucht habe ich mich bisher unter Zuhilfenahme der Suche dieses Forums und der Tools: "md5.exe", FSUM, md5sums und MS FCIV. Server sind MS Windows Server 2003 R2 Standard sowie Small Business Server 2003.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 162351

Url: https://administrator.de/forum/hashpruefung-per-batch-fuer-backup-162351.html

Ausgedruckt am: 05.05.2025 um 10:05 Uhr

bastla
bastla 10.03.2011 um 12:21:20 Uhr
Goto Top
Hallo MarcoTi und willkommen imForum!

Du kannst doch zB mit
for /f %%i in ('fciv Dateiname') do set "Hash=%%i"
den Hashwert der jeweiligen Datei auslesen und in einer Variablen speichern ...

Alternative: Gleich die ganze Zeile (mit der Du dann einen "findstr /x"-Vergleich machen könntest) ermitteln:
for /f "delims=" %%i in ('fciv Dateiname') do set "HashZeile=%%i"
Grüße
bastla