Первый вариант, через VNC или Apple Remote Desktop загрузиться и посмотреть состояние в графическом режиме.
Но есть способ автоматизировать процесс.
В комплекте с MacOS идёт консольная утилита system_profiler.
Если её запустить просто так, то будет выдана куча системной информации.
Чтобы выделить только нужное, существует набор фильтров.
С полным списком можно ознакомиться командой:
$ system_profiler -listDataTypesНас интересует только подсистема питания SPPowerDataType.
Available Datatypes:
SPHardwareDataType
SPNetworkDataType
SPSoftwareDataType
SPParallelATADataType
SPAudioDataType
SPBluetoothDataType
SPCardReaderDataType
SPDiagnosticsDataType
SPDiscBurningDataType
SPEthernetDataType
SPFibreChannelDataType
SPFireWireDataType
SPDisplaysDataType
SPHardwareRAIDDataType
SPMemoryDataType
SPPCIDataType
SPParallelSCSIDataType
SPPowerDataType
SPPrintersDataType
SPSASDataType
SPSerialATADataType
SPUSBDataType
SPAirPortDataType
SPFirewallDataType
SPNetworkLocationDataType
SPModemDataType
SPNetworkVolumeDataType
SPWWANDataType
SPApplicationsDataType
SPDeveloperToolsDataType
SPExtensionsDataType
SPFontsDataType
SPFrameworksDataType
SPLogsDataType
SPManagedClientDataType
SPPrefPaneDataType
SPStartupItemDataType
SPSyncServicesDataType
SPUniversalAccessDataType
Выполняем:
$ system_profiler SPPowerDataType
Power: Battery Information: Model Information: Serial Number: 9G951015R4M1A Manufacturer: DP Device name: bq20z951 Pack Lot Code: 0000 PCB Lot Code: 0000 Firmware Version: 0042 Hardware Revision: 0001 Cell Revision: 0122 Charge Information: Charge remaining (mAh): 8346 Fully charged: No Charging: No Full charge capacity (mAh): 11999 Health Information: Cycle count: 99 Condition: Normal Battery Installed: Yes Amperage (mA): -3316 Voltage (mV): 7665 System Power Settings: AC Power: System Sleep Timer (Minutes): 60 Disk Sleep Timer (Minutes): 0 Display Sleep Timer (Minutes): 60 Automatic Restart On Power Loss: No Wake On AC Change: No Wake On Clamshell Open: Yes Wake On LAN: Yes Display Sleep Uses Dim: Yes GPUSwitch: 2 Battery Power: System Sleep Timer (Minutes): 10 Disk Sleep Timer (Minutes): 0 Display Sleep Timer (Minutes): 7 Wake On AC Change: No Wake On Clamshell Open: Yes Current Power Source: Yes Display Sleep Uses Dim: Yes GPUSwitch: 2 Reduce Brightness: Yes Hardware Configuration: UPS Installed: No AC Charger Information: Connected: No Charging: No
Предпоследняя строчка
Connected: Yesпоказывает, что подключен внешний источник питания.
И, наоборот,
Connected: Noговорит, что в настоящее время ноутбук работает от батареи.
А показатель
Charge remaining (mAh): 5893уведомляет об оставшемся заряде. Зная
Full charge capacity (mAh): 12008можно посчитать процент заряда.
Все необходимые нам индикаторы не составляет особого труда вычленить с помощью grep/awk, или, указав ключ -xml, распарсить результат с помощью Scala/Groovy.
Можно использовать Automator, в нём имеется встроенный компонент "Профиль системы" с аналогичным функционалом.
Теперь, с помощью cron, того же Automator и т.п. можно настроить, чтобы при падении заряда ниже какого-то уровня, отправлялось смс, почта и другие уведомления для принятия мер: воткнуть вилку в розетку или усыпить машину, если невозможно первое.
Комментариев нет:
Отправить комментарий