本文目录导读:

获取系统引导方式(Legacy BIOS 或 UEFI)可以使用多种脚本方法,具体取决于操作系统,以下是常见系统的脚本实现:
Windows
PowerShell 脚本
# 方法1:使用 bcdedit
$bcdedit = bcdedit /enum {current} | Select-String "path"
if ($bcdedit -match "\\Windows\\System32\\winload\.efi") {
Write-Output "引导方式: UEFI"
} elseif ($bcdedit -match "\\Windows\\System32\\winload\.exe") {
Write-Output "引导方式: Legacy BIOS"
} else {
Write-Output "无法确定引导方式"
}
# 方法2:检查系统分区类型
$disk = Get-Disk | Where-Object {$_.IsSystem -eq $true}
if ($disk.PartitionStyle -eq "GPT") {
Write-Output "引导方式: UEFI (GPT分区表)"
} elseif ($disk.PartitionStyle -eq "MBR") {
Write-Output "引导方式: Legacy BIOS (MBR分区表)"
}
# 方法3:检查固件变量
$firmware = Get-ComputerInfo -Property BiosFirmwareType
if ($firmware.BiosFirmwareType -eq "Uefi") {
Write-Output "引导方式: UEFI"
} else {
Write-Output "引导方式: Legacy BIOS"
}
Batch 脚本 (CMD)
@echo off
bcdedit /enum {current} | findstr /i "winload.efi" >nul
if %errorlevel%==0 (
echo 引导方式: UEFI
) else (
echo 引导方式: Legacy BIOS
)
Linux
Bash 脚本
#!/bin/bash
# 方法1:检查 /sys/firmware/efi 目录
if [ -d /sys/firmware/efi ]; then
echo "引导方式: UEFI"
else
echo "引导方式: Legacy BIOS"
fi
# 方法2:检查 efivars 文件系统
if [ -d /sys/firmware/efi/efivars ]; then
echo "引导方式: UEFI"
fi
# 方法3:检查 dmesg 输出
if dmesg | grep -i "efi" | grep -q "EFI v"; then
echo "引导方式: UEFI"
fi
# 方法4:使用 efibootmgr (需要安装)
if command -v efibootmgr &> /dev/null; then
efibootmgr > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo "引导方式: UEFI"
else
echo "引导方式: Legacy BIOS"
fi
fi
macOS
Shell 脚本
#!/bin/bash
# 方法1:使用 system_profiler
if system_profiler SPHardwareDataType | grep -q "Boot ROM Version"; then
echo "引导方式: UEFI (由 macOS 的 Boot ROM 处理)"
fi
# 方法2:检查 NVRAM (适用于基于 Intel 的 Mac)
if nvram -p | grep -q "boot-args"; then
echo "系统使用 EFI 引导"
fi
# 方法3:检查磁盘分区表类型
diskutil list | grep -q "GUID_partition_scheme"
if [ $? -eq 0 ]; then
echo "磁盘使用 GPT 分区表 (UEFI 引导)"
fi
跨平台 Python 脚本
import sys
import os
import platform
def check_boot_mode():
system = platform.system().lower()
if system == "windows":
import ctypes
# 使用 Windows API 检测固件类型
GetFirmwareType = ctypes.windll.kernel32.GetFirmwareType
firmware_type = ctypes.c_uint32()
GetFirmwareType(ctypes.byref(firmware_type))
# 0: BIOS, 1: UEFI, 2: Max
if firmware_type.value == 1:
return "UEFI"
else:
return "Legacy BIOS"
elif system == "linux":
# 检查 EFI 目录
if os.path.exists("/sys/firmware/efi"):
return "UEFI"
else:
return "Legacy BIOS"
elif system == "darwin": # macOS
# macOS 默认使用 UEFI
return "UEFI"
else:
return "Unknown"
if __name__ == "__main__":
print(f"系统引导方式: {check_boot_mode()}")
快速判断方法总结
Linux: 检查 /sys/firmware/efi 目录是否存在
Windows: 检查 bcdedit 输出中的 winload.efi vs winload.exe
macOS: 现代 Mac 默认使用 UEFI(EFI 引导)
这些脚本可以轻松集成到自动化部署、系统信息收集或故障排查工具中,选择最适合你使用场景的方法即可。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播