#powershell
#powershell
Вопрос:
Как я могу использовать Powershell, чтобы определить, работает ли устройство в режиме загрузки UEFI или Legacy, и вернуть простую строку с надписью «UEFI» или «Legacy»?
Комментарии:
1. Отвечает ли это на ваш вопрос: wintech.sgal.info/2016/12 /…
Ответ №1:
Ниже приведено для повышенных прав, могут быть способы сделать его не повышенным, но вы не указали, является ли это требованием, так что вот оно.
Запустите это в PowerShell с повышенными правами:
$BootMode = bcdedit | Select-String "path.*efi"
if ($null -eq $BootMode) {
# I think non-uefi is WindowsSystem32winload.exe
$BootMode = "Legacy"
}else {
# UEFI is:
#path EFIMICROSOFTBOOTBOOTMGFW.EFI
#path Windowssystem32winload.efi
$BootMode = "UEFI"
}
Write-Host "Computer is running in $BootMode boot mode."
Если у него есть .efi
путь, его режим UEFI. Если он показывает .exe
, это устаревшая загрузка, если мне не изменяет память.