CMD Abfrage funktioniert nicht?

Kann mir jemand sagen warum das hier nicht funktioniert:

@echo offset Benutzer=%username% :SpaceDel1if "%Benutzer:~0,1%"==" " set "Benutzer=%Benutzer:~1%" & goto :SpaceDel1:SpaceDel2if "%Benutzer:~-1%"==" " set "Benutzer=%Benutzer:~0,-1%" & goto :SpaceDel2If exist "C:\Users\%Benutzer%\AppData\Local\Backup\Festplatte.txt" goto FestplatteDateiVorhandengoto FestplatteDateiFehlt:FestplatteDateiFehltecho.echo ----------------------wmic logicaldisk get deviceid, volumenameecho ----------------------:FAFAecho.set /P FestplatteAngeben=Bitte geben Sie die ID ihrer Festplatte an, auf der Sie das Backup speichern moechten (den Buchstaben):if 'FestplatteAngeben'=='A' goto Buchstabeif 'FestplatteAngeben'=='B' goto Buchstabeif 'FestplatteAngeben'=='C' goto Buchstabeif 'FestplatteAngeben'=='D' goto Buchstabeif 'FestplatteAngeben'=='E' goto Buchstabeif 'FestplatteAngeben'=='F' goto Buchstabeif 'FestplatteAngeben'=='G' goto Buchstabeif 'FestplatteAngeben'=='H' goto Buchstabeif 'FestplatteAngeben'=='I' goto Buchstabeif 'FestplatteAngeben'=='J' goto Buchstabeif 'FestplatteAngeben'=='K' goto Buchstabeif 'FestplatteAngeben'=='L' goto Buchstabeif 'FestplatteAngeben'=='M' goto Buchstabeif 'FestplatteAngeben'=='N' goto Buchstabeif 'FestplatteAngeben'=='O' goto Buchstabeif 'FestplatteAngeben'=='P' goto Buchstabeif 'FestplatteAngeben'=='Q' goto Buchstabeif 'FestplatteAngeben'=='R' goto Buchstabeif 'FestplatteAngeben'=='S' goto Buchstabeif 'FestplatteAngeben'=='T' goto Buchstabeif 'FestplatteAngeben'=='U' goto Buchstabeif 'FestplatteAngeben'=='V' goto Buchstabeif 'FestplatteAngeben'=='W' goto Buchstabeif 'FestplatteAngeben'=='Z' goto Buchstabeif 'FestplatteAngeben'=='Y' goto Buchstabeif 'FestplatteAngeben'=='Z' goto Buchstabegoto FAFA:Buchstabedel "C:\Users\%Benutzer%\AppData\Local\Backup\Festplatte.txt" echo %FestplatteAngeben% >> "C:\Users\%Benutzer%\AppData\Local\Backup\Festplatte.txt":FAFS:FestplatteDateiVorhandenset /p FestplatteDateiAbrufen=<"C:\Users\%Benutzer%\AppData\Local\Backup\Festplatte.txt"echo.set /P FestplatteSpeichern=Ihr Backup wird auf der Festplatte %FestplatteDateiAbrufen% gespeichert. Moechten Sie diese Einstellung aendern? (J/N)if 'FestplatteSpeichern'=='J' goto FestplatteAendernif 'FestplatteSpeichern'=='N' goto FestplatteLassengoto FAFS:FestplatteAenderngoto FestplatteDateiFehlt:FestplatteLassen
Computer, Technik, cmd, Technologie, Abfrage, goto, If
4 Antworten
Bat Datei Backup mit ersetzen?

Ich habe eine Bat Datei geschrieben die Alle meine Dateien auf meine externe Festplatte kopiert. Gibt es auch eine Möglichkeit die Bat so umzuprogrammieren, das bestehende Dateien nicht kopiert werden und gelöschte Dateien auch im Backup gelöscht werden? (So das man nicht immer alles kopieren muss).

Heißt das Programm könnte erstmal Scannen welche Dateien gleich geblieben sind und welche auf der internen Festplatte gelöscht wurden und kopiert und löscht nur die Dateien im Backup die geändert wurden.

Das Bild zeigt wie die Bat Datei funktioniert.

@echo off
set OrdnerDatum=%date%

@echo off
echo Backup Start: >> "Backup Zeit.txt"
echo Datum: %date% >> "Backup Zeit.txt"
echo Uhrzeit: %time% >> "Backup Zeit.txt"
echo ---------------------- >> "Backup Zeit.txt"

md "G:\Backup\%OrdnerDatum%"
md "G:\Backup\%OrdnerDatum%\Desktop"
md "G:\Backup\%OrdnerDatum%\Dokumente"
md "G:\Backup\%OrdnerDatum%\Downloads"
md "G:\Backup\%OrdnerDatum%\Musik"
md "G:\Backup\%OrdnerDatum%\Videos"

xcopy /E "C:\Users\BENUTZER\Desktop" "G:\Backup\%OrdnerDatum%\Desktop"
xcopy /E "C:\Users\BENUTZER\Documents" "G:\Backup\%OrdnerDatum%\Dokumente"
xcopy /E "C:\Users\BENUTZER\Downloads" "G:\Backup\%OrdnerDatum%\Downloads"
xcopy /E "C:\Users\BENUTZER\Music" "G:\Backup\%OrdnerDatum%\Musik"
xcopy /E "C:\Users\BENUTZER\Videos" "G:\Backup\%OrdnerDatum%\Videos"

@echo off
echo Backup Ende: >> "Backup Zeit.txt"
echo Datum: %date% >> "Backup Zeit.txt"
echo Uhrzeit: %time% >> "Backup Zeit.txt"
echo ---------------------- >> "Backup Zeit.txt"

shutdown
kopieren, Backup, programmieren, ersetzen, bat
1 Antwort