Es wäre einfacher für Sie gewesen, wenn die Batchdatei richtig formatiert wäre. Die letzte Zeile dieser Batchdatei ist für die Ausführung der 7z
Befehlszeile verantwortlich. Dies ist der Punkt, an dem Sie eine -p
Option hinzufügen können .
"%SevenZip%" a -pYourPassword -tzip "%DestZip%" -r "%BaseDir%\*.*"
Ich habe die Datei auch formatiert
@echo off setlocal enabledelayedexpansion REM Define file and folder locations set BaseDir=D:\SourceTest set DestZip=D:\Destinationtest\BACKUP.zip set SevenZip=C:\Program Files\7-Zip\7z.exe REM Zip all files and folders echo Getting time ... for /f "tokens=1-9" %%a in ('wmic.exe Path Win32_LocalTime Get Day^,DayOfWeek^,Hour^,Minute^,Month^,Quarter^,Second^,WeekInMonth^,Year ^| find /v ""') do ( set /a Line += 1 if "!Line!"=="1" ( set VarA=%%a&set VarB=%%b&set VarC=%%c&set VarD=%%d&set VarE=%%e&set VarF=%%f&set VarG=%%g&set VarH=%%h&set VarI=%%i ) if "!Line!"=="2" ( set !VarA!=%%a&set !VarB!=%%b&set !VarC!=%%c&set !VarD!=%%d&set !VarE!=%%e&set !VarF!=%%f&set !VarG!=%%g&set !VarH!=%%h&set !VarI!=%%i ) ) for %%a in (Month Day Hour Minute Second) do ( if !%%a! LSS 10 set %%a=0!%%a! ) set TimeStamp=%Year%%Month%%Day%_%Hour%%Minute%%Second% echo Compressing '%BaseDir%' ... for %%a in ("%DestZip%") do ( set DestZip=%%~dpna-%TimeStamp%%%~xa ) "%SevenZip%" a -pPassword@1 -tzip "%DestZip%" -r "%BaseDir%\*.*"
Wenn ich versuche, die Ausgabedatei zu extrahieren, werden Sie nach einem Kennwort gefragt:
Um den Dateinamen zu verschlüsseln, müssen Sie eine -mhe=on
Option zum Verschlüsseln des Datei-Headers hinzufügen . Diese Option funktioniert jedoch nicht mit dem zip
Format. Damit das 7z
Format funktioniert, nehmen Sie die folgenden Änderungen vor:
Zieldateiname ändern
set DestZip=D:\Destinationtest\BACKUP.7z
Letzte Zeile bearbeiten
"%SevenZip%" a -mhe=on -pYourPassword "%DestZip%" -r "%BaseDir%\*.*"
Nach diesen Änderungen werden Sie jedes Mal nach einem Kennwort gefragt.