CMD 批处理脚本自定义 UEFI 启动项,您需要使用 bcdedit 命令来操作 Windows 引导管理器(Boot Configuration Data,BCD)。BCD 存储了计算机启动时所需的信息,包括可用的操作系统和启动选项

 

BCDEDIT - 启动配置数据存储编辑器

Bcdedit.exe 命令行工具用于修改启动配置数据存储。启动配置数据存储包含启动配置参数并控制操作系统的启动方式。
这些参数以前位于 Boot.ini 文件中(在基于 BIOS 的操作系统中)或位于非易失性 RAM 项中(在基于可扩展固件接口的操作系统中)。
可以使用 Bcdedit.exe 在启动配置数据存储中添加、删除、编辑和附加项。

有关命令和选项的详细信息,请键入 bcdedit.exe /? <command>。例如,若要显示有关 /createstore 命令的详细信息,请键入:

     bcdedit.exe /? /createstore

有关本帮助文件中按字母顺序排列的主题列表,请运行 "bcdedit /? TOPICS"。

对存储执行的命令
================================
bcdedit.exe /store          用于指定当前系统默认值以外的 BCD 存储。
bcdedit.exe /createstore    新建空的启动配置数据存储。
bcdedit.exe /export         将系统存储的内容导出到文件。以后可以使用该文件还原系统存储的状态。
bcdedit.exe /import         使用 /export 命令创建的备份文件来还原系统存储的状态。
bcdedit.exe /sysstore       设置系统存储设备(仅影响 EFI 系统,在重新启动后不再保留,且仅用于系统存储设备不确定的情况下)。

对存储中的项执行的命令
===========================================
bcdedit.exe /copy           复制存储中的项。
bcdedit.exe /create         在存储中创建新项。
bcdedit.exe /delete         删除存储中的项。
bcdedit.exe /mirror         创建存储中项的镜像。

运行 bcdedit /? ID 可获得有关这些命令使用的标识符的信息。

对项选项执行的命令
======================================
bcdedit.exe /deletevalue    删除存储中的项选项。
bcdedit.exe /set            设置存储中的项选项值。

运行 bcdedit /? TYPES 可获得这些命令使用的数据类型的列表。
运行 bcdedit /? FORMATS 可获得有效数据格式的列表。

控制输出的命令
============================
bcdedit.exe /enum           列出存储中的项。
bcdedit.exe /v              命令行选项,完整显示项标识符,而不是使用已知标识符的名称。单独使用命令 /v 可完整显示 ACTIVE 类型的项标识符。

单独运行 "bcdedit" 等同于运行 "bcdedit /enum ACTIVE"。

控制启动管理器的命令
======================================
bcdedit.exe /bootsequence   为启动管理器设置一次性启动序列。
bcdedit.exe /default        设置启动管理器将使用的默认项。
bcdedit.exe /displayorder   设置启动管理器显示 多重启动菜单的顺序。
bcdedit.exe /timeout        设置启动管理器的超时值。
bcdedit.exe /toolsdisplayorder  设置启动管理器显示工具菜单的顺序。

控制启动应用程序紧急管理服务的命令
==========================================================================
bcdedit.exe /bootems        启用或禁用启动应用程序的紧急管理服务。
bcdedit.exe /ems            启用或禁用操作系统项的紧急管理服务。
bcdedit.exe /emssettings    设置全局紧急管理服务参数。

控制调试的命令
==============================
bcdedit.exe /bootdebug      启用或禁用启动应用程序的启动调试。
bcdedit.exe /dbgsettings    设置全局调试程序参数。
bcdedit.exe /debug          启用或禁用操作系统项的内核调试。
bcdedit.exe /hypervisorsettings  设置虚拟机监控程序的参数。

控制远程事件日志记录的命令
=========================================
bcdedit.exe /eventsettings  设置全局远程事件日志记录参数。
bcdedit.exe /event          启用或禁用操作系统项的远程事件日志记录。

 

CMD 批处理脚本自定义 UEFI 启动项,您需要使用 bcdedit 命令来操作 Windows 引导管理器(Boot Configuration Data,BCD)。BCD 存储了计算机启动时所需的信息,包括可用的操作系统和启动选项。以下是一个简单的示例,演示如何使用 CMD 批处理脚本添加、修改和删除启动项:

1. 添加启动项

要添加一个新的启动项,您可以使用 bcdedit /create 命令。例如,假设您要添加一个名为 "MyOS" 的新启动项,引导到 C:\MyOS\bootmgr,您可以执行以下命令:

Copy Code
bcdedit /create /d "MyOS" /application bootsector

此命令将创建一个新的启动项,并返回一个唯一的 GUID 标识符,例如 {guid}

接下来,您需要设置新启动项的设备和路径。假设 C:\MyOS\bootmgr 是您的启动文件的路径,则可以执行以下命令:

Copy Code
bcdedit /set {guid} device partition=C:
bcdedit /set {guid} path \MyOS\bootmgr

2. 修改启动项

要修改现有的启动项,您可以使用 bcdedit /set 命令。例如,如果您需要更改启动项的显示名称为 "My Custom OS",可以执行以下命令:

Copy Code
bcdedit /set {guid} description "My Custom OS"

3. 删除启动项

要删除现有的启动项,您可以使用 bcdedit /delete 命令。例如,如果您要删除名为 "MyOS" 的启动项,可以执行以下命令:

Copy Code
bcdedit /delete {guid}

注意事项:

  • 在使用 bcdedit 命令时,请务必小心,确保您知道自己在做什么。错误的使用可能导致系统无法启动。
  • 在执行上述命令之前,请确保您有管理员权限。
  • 在实际操作中,请将 guid 替换为您要操作的启动项的实际标识符。

请注意,此示例仅适用于添加基本的引导项。对于更复杂的引导项配置(例如,引导到 Linux 或其他操作系统),您可能需要使用其他工具或技术。


查看UEFI启动项的详细信息,包括路径、参数、图标等,您可以使用 bcdedit /enum firmware 命令。这会列出所有的UEFI启动项及其详细信息。以下是一个示例批处理脚本,演示如何使用该命令:

Copy Code
@echo off
cls

echo Listing UEFI boot entries:

bcdedit /enum firmware

pause

将上述命令保存到一个批处理文件(例如 list_uefi_boot_entries.bat),然后运行它。它会显示所有的UEFI启动项及其详细信息,包括启动项的标识符(GUID)、描述、路径等。

如果您想查看特定启动项的详细信息,您可以使用以下命令:

Copy Code
bcdedit /enum firmware /v

这将显示更详细的信息,包括启动项的GUID、描述、路径、参数等。

请注意,您需要以管理员权限运行批处理脚本以查看或修改UEFI启动项。


 

posted @ 2024-04-09 22:27  suv789  阅读(1472)  评论(0)    收藏  举报