Чтобы получить процент заряда батареи с помощью пакетного файла, вы можете использовать команду «WMIC» в Windows. Вот пример фрагмента кода:
@echo off
setlocal
for /F "skip=1 delims=" %%A in ('wmic path Win32_Battery Get EstimatedChargeRemaining') do (
set "batteryPercent=%%A"
goto :done
)
:done
echo Battery Percentage: %batteryPercent%
Этот пакетный файл использует команду WMICдля запроса класса Win32_Batteryи получения свойства EstimatedChargeRemaining, которое представляет процент заряда батареи. Цикл for /Fзахватывает выходные данные команды WMICи присваивает их переменной batteryPercent. Наконец, пакетный файл отображает процент заряда батареи.
Вот еще несколько способов узнать процент заряда батареи:
Метод 1. Использование PowerShell:
@echo off
for /F "usebackq tokens=2 delims== " %%A in (`powershell -command "(Get-WmiObject -Class Win32_Battery).EstimatedChargeRemaining"`) do (
set "batteryPercent=%%A"
goto :done
)
:done
echo Battery Percentage: %batteryPercent%
Метод 2. Использование VBScript:
@echo off
for /F "usebackq tokens=2 delims== " %%A in (`cscript //Nologo //E:vbscript -e "WScript.Echo (GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("SELECT EstimatedChargeRemaining FROM Win32_Battery").ItemIndex(0).EstimatedChargeRemaining)"`) do (
set "batteryPercent=%%A"
goto :done
)
:done
echo Battery Percentage: %batteryPercent%
Метод 3. Использование PowerShell и языка запросов WMI (WQL):
@echo off
for /F "usebackq tokens=2 delims== " %%A in (`powershell -command "(Get-WmiObject -Query 'SELECT EstimatedChargeRemaining FROM Win32_Battery').EstimatedChargeRemaining"`) do (
set "batteryPercent=%%A"
goto :done
)
:done
echo Battery Percentage: %batteryPercent%