添加PE到C盘
本帖最后由 hilsonma 于 2023-6-12 06:58 编辑这是一个Windows命令脚本,我使用这个脚本来添加PE到已有Windows系统的C盘,同时添加引导。
可以将pe的wim文件拖放到脚本上来执行
也可以点击脚本文件执行脚本再将pe的wim文件拖放到脚本窗口
@echo off
title 添加PE到C盘
setlocal enabledelayedexpansion
set wim=%1
echo.
if %1.==. set /p wim=请将pe的wim文件拖放到本窗口后按回车键:
if not exist %wim% ( echo 文件不存在!&timeout 3 >nul&exit )
pushd %~dp0
set bcd1=bcdedit /store c:\Boot\BCD
set desc="Win PE"
set wim1=\pe.wim
set sdid="partition=c:"
set sdip="\Windows\Boot\DVD\EFI\boot.sdi"
cls
echo.
echo 即将把 %wim% 复制成 c:\pe.wim 并添加引导
echo.
echo 1.添加UEFI引导 2.添加传统引导 3.退出
echo.
set n=1
set /p n=请输入选项并回车(默认%n%):
goto:do%n%
:do1
mountvol z: /s
set bcd1=bcdedit /store z:\EFI\Microsoft\Boot\BCD
:do2
copy %wim% c:\pe.wim
for /f "tokens=2 delims={}" %%a in ('%bcd1% /create /application osloader') do set id={%%a}
%bcd1% /set %id% description %desc%
%bcd1% /set %id% device ramdisk="%wim1%,{ramdiskoptions}"
%bcd1% /set %id% osdevice ramdisk="%wim1%,{ramdiskoptions}"
%bcd1% /set %id% systemroot \Windows
%bcd1% /set %id% detecthal 1
%bcd1% /set %id% winpe 1
%bcd1% /displayorder %id% /addlast
%bcd1% /timeout 1
%bcd1% /set {bootmgr} displaybootmenu 1
%bcd1% /set {bootmgr} nointegritychecks 1
%bcd1% /create {ramdiskoptions}
%bcd1% /set {ramdiskoptions} ramdisksdidevice %sdid%
%bcd1% /set {ramdiskoptions} ramdisksdipath %sdip%
pause
很强大 辛苦了 谢谢 厉害~!越来越简单了~ 多谢分享 赞赞 本帖最后由 765058729 于 2023-6-12 08:10 编辑
这样写z:\EFI\Microsoft\Boot\BCD,我所有启动文件都在C盘,不通用啊,最好自动判断有没有引导盘 很给力,谢谢。 这是个什么操作学习学习 多谢分享 谢谢,前辈老师的东西就是好用.. 本帖最后由 610644034 于 2023-6-12 20:20 编辑
给你一个想看源码头都大的脚本!{:1_201:} 多谢分享 765058729 发表于 2023-6-12 08:08
这样写z:\EFI\Microsoft\Boot\BCD,我所有启动文件都在C盘,不通用啊,最好自动判断有没有引导盘
bios+mbr
uefi+gpt
通用? 多谢分享 本帖最后由 hilsonma 于 2023-6-12 11:36 编辑
765058729 发表于 2023-6-12 08:08
这样写z:\EFI\Microsoft\Boot\BCD,我所有启动文件都在C盘,不通用啊,最好自动判断有没有引导盘
这本来就不是全通用的。
我的应用场景是:拿到一台预装win的二手电脑,或者朋友要重装系统的电脑,插u盘,运行winosinfo看看原系统是不是c盘win,再看原启动方式是uefi还是传统,然后就把预先选好放在u盘的pe的wim镜像拖放到这个命令脚本上,就会在原来的c盘win上添加一个进pe的选项,就可以直接硬盘启动进pe
只适用于c盘win,主引导是bootmgfw.efi (uefi) 或 bootmgr (传统)
如果是c盘直接做uefi引导这种非标引导可能不适用,因为我没有这样的主板(支持ntfs分区做uefi主引导的主板),没有试过能不能进行mountvol z: /s BOOTICE YYDS! 目前还需要完善些地方:
1.判断当前系统 是否为efi 启动,
2.找出bcd启动分区,如果没有盘符就挂载 bcd所在启动分区到z:
谢谢分享。 dos时代菜鸟 发表于 2023-6-12 12:01
目前还需要完善些地方:
1.判断当前系统 是否为efi 启动,
感谢建议! 这就有待有需要的朋友自行完善了。
我要的不是大全,我只是拿来临时应用,简单快速的添加一个硬盘pe.
在运行这个脚本前,我会使用winosinfo或cpu-z来简单了解一下机器的配置
然后运行这个脚本,借以进入pe来进一步操作,必要的时候也可能使用bootice来查看分区及或处理引导。
最终经我维护的电脑都是在esp或d盘添加pe的,不是添加在c盘的。
这个脚本只不过是一个简单快速的临时过渡。 很强大 辛苦了 谢谢
这个牛了,越来粤省事了 临时用,方便、省事,谢谢大佬分享! 赞
其实为系统添加一个pe是不应该放在C盘的,做系统的时候会提示文件正在使用无法格式化,强行格式化会导致pe工具失效无法使用,推荐把pe安装到esp分区,或者硬盘剩余空间最大的分区 SSD&gpt了,做系统没必要格式化,删除就可以了,不必格式化慢多少。 少了全自动,因为引导需手动,应该自动选择的
赞
赞
赞 很强很方便 不知道行不行? 很给力,谢谢