zunaras
Goto Top

Batch Abfrage Vergleiche mit Variable goto

Schönen guten Tag!

ich habe mir ein Script gebastelt. Mehr nach dem Try and Error Prinzip als wirklichem Können.
das Skript soll per 7zip ein Vollbackup und anschließende Diff-Backups erstellen.

Es wird geprüft, wie die letzte Datei im Backupordner heißt -> %lastfile%

Der nächste Schritt soll prüfen, ob %lastfile% ein *Full.7z enthält. Diese Zeile wird scheinbar komplett ignoriert und geht zum nächsten Schritt darunter über.

Danach wird geprüft, ob das Diff-Backup größer als 100 MB ist. Wenn ja, soll ein Vollbackup sonst Diffbackup gemacht werden. Diesen Wert schraube ich später auf 1GB hoch, wenn alles läuft.

Könnte mir jemand helfen, wie so ein Textvergleich mit einer Variable funktioniert?

hier ein kleiner Ausschnitt.
for /f "tokens=*" %%a in ('dir %BF%\%SP%\*.7z /b /od') do set lastFile=%%a  

@echo Lastfile
@echo %lastfile%

if %lastfile% == "*Full.7z" goto DiffBackup else Pruefung  

:Pruefung
for %%F in (%BF%\%SP%\*Diff.7z) do set groesse=%%~zF
if %groesse% geq 100000000 goto FullBackup else DiffBackup

:DiffBackup
.7z.exe u
.
.goto Weiterunten

:FullBackup
.7z.exe a
.
.

Viele Grüße
Zunaras

Content-ID: 321713

Url: https://administrator.de/forum/batch-abfrage-vergleiche-mit-variable-goto-321713.html

Ausgedruckt am: 21.12.2024 um 07:12 Uhr

131381
Lösung 131381 22.11.2016 aktualisiert um 16:34:45 Uhr
Goto Top
if %lastfile% == "*Full.7z" goto DiffBackup else Pruefung
Des goat so ned face-smile. Wildcards werden hier nicht unterstützt

Aber so z.B.:
echo "%lastfile%"| findstr /iec:"Full.7z" && (  
    REM Hier DIFF
) || (
    REM Hier FULL
)
oder so

if /i "%lastfile:~-7%" == "Full.7z" goto DiffBackup  
Gruß
Zunaras
Zunaras 23.11.2016 um 12:58:41 Uhr
Goto Top
Hi!

Danke für die Hilfe!

so wie das aussieht, fehlte da noch ein %
if /i "%lastfile%:~-7" == "Full.7z" goto DiffBackup  
Aber auch damit wird die Zeile nicht beachtet.

Das hier zeigt er bei der Ausführung an.
if /I 2016.11.23_08.34.12_Full.7z:~-7 == Full.7z goto DiffBackup

Grüße
131381
131381 23.11.2016 um 13:23:05 Uhr
Goto Top
Tippfehler, korrigiert ...sorry.
Zunaras
Zunaras 23.11.2016 um 13:50:25 Uhr
Goto Top
Lustig. Habe hier gerade in einem alten Beitrag hier im Forum auch gesehen, dass das % hinter die Zahl (~-7) muss und ausprobiert.
Funktioniert Prima! Vielen Dank!