Wim镜像解包打包/Wim镜像系统安装备份还原脚本(wimlib-imagex)。
支持拖放分区、目录、wim/esd文件,支持热备份。
支持拖放分区、目录、wim/esd文件,支持热备份。
@echo off ::设置当前路径为脚本所在路径 pushd %~dp0 ::设置备份还原使用的备份包路径 set bak=d:\system.wim ::脚本在PE系统盘,没有拖放文件,默认一键还原 if %1%~d0==X: set "src=%bak%" &&goto:sys ::脚本不在PE系统盘,没有拖放文件,默认打包wim1文件夹生成pe镜像 if %1a==a set src=wim1&&goto:dir ::获取拖放文件以便判断 set src=%1 ::拖放的是分区,进入系统备份 if %src:~-1%==\ goto:drv ::拖放的是文件夹,进入WIM打包 if exist %src%\ goto:dir ::PE环境,如果拖放的路径中没有PE字眼就进入一键还原 if not %SystemDrive%==X: goto:wim for /f %%i in ('echo %src%^|find /i "pe"') do set str=%%i if %str%a==a goto:sys ::到了这里,就当拖放的是PE镜像文件,进入WIM解包 :wim title WIM解包 set dir=wim1 if %~d0==X: set dir=d:\%dir% echo 正在解包%src% 放到%dir% bin\wimlib-imagex apply %src% 1 %dir% exit :dir title WIM打包 set wim=z.wim if %~d0==X: set wim=d:\%wim% echo 正在打包%src% 生成%wim% bin\wimlib-imagex capture %src% %wim% --boot --check exit :drv title 系统备份 echo. echo 注意!!! echo. echo 即将把系统%src:~0,1%盘备份到%bak% echo. echo. echo 要取消备份请关闭此窗口 echo. echo 要继续备份请按任意键... pause>nul cls echo. echo 正在进行备份,请耐心等待,完成后会自动关闭窗口。 echo. if %SystemDrive%==X: bin\wimlib-imagex capture %src% %bak% --check &&exit ::不是PE环境,需加--snapshot参数进行热备份 bin\wimlib-imagex capture %src% %bak% --check --snapshot exit :sys title 一键还原 if not exist %src% goto :err echo. echo 注意!!! echo. echo 即将把系统还原到刚安装时的状态!!! echo C盘的资料包括桌面的资料会丢失!!! echo. echo. echo 要取消还原请关闭此窗口 echo. echo 要继续还原请按任意键... pause>nul cls echo 正在进行还原,你可以起来走一走,完成后会自动重启。 FORMAT C: /Q /Y >nul bin\wimlib-imagex apply %src% 1 C:\ call bin\bcd.cmd pecmd shut -r exit :err echo. echo 没有找到安装备份! echo. echo 按任意键退出... pause>nul exit |
文章来源:
网络小编D
版权声明:
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站立刻删除。
