|
本帖最后由 gxbcm 于 2024-5-29 21:39 编辑
灵光闪现,更新。
@echo off
mode con cols=90 lines=90
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z ) do (
SET SNADIR=%%a:\SNAP\
IF exist %%a:\SNAP\ GOTO MENU2
IF exist %%a: SET n1=%%a
)
SET DIRS=%n1%
SET /P DIRS= 请输入备份存放工作盘C--%DIRS%字母 回车:
SET SNADIR=%DIRS%:\SNAP\
MD %SNADIR%
GOTO MENU2
EXIT
:MENU2
IF NOT EXIST %SNADIR%CONFIG.TXT ECHO.SNA>%SNADIR%CONFIG.TXT
SET /P EWS=<%SNADIR%CONFIG.TXT
IF %EWS% equ ESD GOTO SS
IF %EWS% equ WIM GOTO SS
:MENU
SET n=1
CLS
title SNAPSHOT 系统备份恢复
for /l %%i in (1,1,10) do (
IF NOT EXIST %SNADIR%SYSC%%i.SNA GOTO PASS
set /a n=%%i+1
)
:PASS
SET /A Bn=n
SET /A Hn=n-1
color 1f
echo.
echo. 备份目录%SNADIR%中存在的SNA映像文件
echo.============================================
dir %SNADIR%*.sna /b
echo.============================================
echo. SNAPSHOT 备份恢复系统
echo. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
echo. [5] 一键自动备份系统
echo.
echo. [0] 一键自动恢复系统
echo.
echo. [8] 删除一个差异备份
echo.
echo. [2] 查看备份%SNADIR%目录
echo.
echo. [1] 手动选择备份恢复系统
echo. ----------------------------------------------------------------------------------------
echo. [E]退出 [Q]重启 [S]启动WIMLIB-IMAGEX一键自动备份恢复 [M]启动模式%EWS%
echo. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
set ST1=2
SET /P ST1= 请输入选项(默认:%ST1%)回车:
if /I "%ST1%"=="5" goto winbackup
if /I "%ST1%"=="0" goto winrecover
if /I "%ST1%"=="2" goto folderopen
if /I "%ST1%"=="8" goto SC
if /I "%ST1%"=="S" goto SS
if /I "%ST1%"=="M" goto MM
if /I "%ST1%"=="1" goto SHOU
if /I "%ST1%"=="e" goto exit
GOTO MENU
:MM
ECHO.启动模式:
echo. 1.ESD模式 2.WIM模式 3.SNA模式
SET /P QDMS= 请输入启动模式 默认:%EWS% (1-3)数字 回车:
if /I "%QDMS%"=="1" SET EWS=ESD
if /I "%QDMS%"=="2" SET EWS=WIM
if /I "%QDMS%"=="3" SET EWS=SNA
ECHO.%EWS%>%SNADIR%CONFIG.TXT
echo. 下次启动模式%EWS%模式启动
PAUSE
GOTO MENU
:SS
IF NOT EXIST "%cd%\WIMLIB-S.EXE" (
SET EWS=SNA
ECHO.%EWS%>%SNADIR%CONFIG.TXT
GOTO MENU
)
SET /P EWS=<%cd%\CONFIG1.TXT
ECHO.%EWS%>%SNADIR%CONFIG.TXT
WIMLIB-S.EXE & EXIT
EXIT
:SC
SET ST7=%Hn%
SET /P ST7= 按E键-返回主菜单 默认删除SYSC%ST7%.SNA (默认第%Hn%个备份 输入1-%Hn%数字) 回车:
if /I "%ST7%"=="e" goto MENU
IF NOT EXIST %SNADIR%SYSC%ST7%.SNA GOTO MENU
IF "%ST7%"=="1" (
del %SNADIR%SYSC1.SNA /F /Q
del %SNADIR%SYSC1.HSH /F /Q
) ELSE (
del %SNADIR%SYSC%ST7%.SNA /F /Q
)
PAUSE
GOTO MENU
:SHOU
SNAPSHOT64.EXE -L0
GOTO MENU
EXIT
:winbackup
IF NOT EXIST %SNADIR%SYSC1.SNA GOTO BACKUP1
SET ST9=%Bn%
SET /P ST9= 按E键-返回主菜单 默认备份SYSC%ST9%.SNA (默认第%Bn%个备份 输入1-9数字) 回车:
if /I "%ST9%"=="e" goto MENU
if /I "%ST9%"=="1" goto BACKUP1
"Snapshot64.exe" C: %SNADIR%SYSC%ST9%.SNA -R -Gx -L0 -H%SNADIR%SYSC1.HSH -Y
PAUSE
GOTO MENU
exit
:BACKUP1
SET ST0=0
SET /P ST0= 按E键-返回主菜单 默认备份SYSC1.SNA 回车:
if /I "%ST0%"=="e" goto MENU
"Snapshot64.exe" C: %SNADIR%SYSC1.SNA -R -Gx -L0 -Y
pause
GOTO MENU
EXIT
:winrecover
IF NOT EXIST %SNADIR%SYSC1.SNA GOTO MENU
IF EXIST "X:\WINDOWS\" GOTO PEWIN
SET ST3=%Hn%
SET /P ST3= 按E键-返回主菜单 默认恢复SYSC%ST3%.SNA (默认第%Hn%个恢复 输入1-%ST3%数字) 回车:
if /I "%ST3%"=="e" goto MENU
snapshot64 --schedule c: %SNADIR%SYSC%ST3%.SNA --autoreboot:any
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Snapshot" /f /v "AutoReboot" /t REG_DWORD /d 1
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Snapshot" /f /v "AutoRebootSuccess" /t REG_DWORD /d 0
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Snapshot" /f /v "Timeout" /t REG_DWORD /d 3
shutdown -r -t 0
GOTO MENU
EXIT
:PEWIN
IF NOT EXIST %SNADIR%SYSC1.SNA GOTO MENU
set ST4=%Hn%
SET /P ST4= 按E键-返回主菜单 默认恢复SYSC%ST4%.SNA (默认第%Hn%个恢复 输入1-%ST4%数字) 回车:
if /I "%ST4%"=="e" goto MENU
snapshot64 %SNADIR%SYSC%ST4%.sna c: -Y -Gx
shutdown -r -t 0
GOTO MENU
EXIT
:folderopen
DIR %SNADIR%
pause
GOTO MENU
exit
|
|