Medindo quanto as baterias duram em outro sistema? [fechadas]

0

Eu tenho um computador Linux e um laptop Microsoft Vista. Eu gostaria de saber quanto as baterias duram no laptop do computador. Como posso fazer um script para isso, ou seja, como verificar o Linux quando o cabo de energia é desconectado e quando ele para de enviar pings para o Linux? Eu tentei começar com

#!/bin/bash
time (
    while [ true ]; do
        ping -c 1 "$1" > /dev/null || break
        sleep 1
    done
)

Mas agora preciso modificar o script para ler se o fio de energia está conectado.

    
por novice 23.12.2015 / 08:36

1 resposta

0

O Windows tem uma API chamada WMI . - Instrumentação de gerenciamento do Windows

Purpose

Windows Management Instrumentation (WMI) is the infrastructure for management data and operations on Windows-based operating systems. You can write WMI scripts or applications to automate administrative tasks on remote computers but WMI also supplies management data to other parts of the operating system and products, for example System Center Operations Manager, formerly Microsoft Operations Manager (MOM), or Windows Remote Management (WinRM).

É uma tecnologia proprietária semelhante ao SNMP ou ao JMX. Ambos são amplamente utilizados em sistemas de monitoramento como Nagios ou Zabbix .

Para recuperar essas informações através da rede é apenas uma questão de ativar o WMI (você encontrará mais informações sobre fóruns relacionados ao Windows) e usar um cliente wmi para o linux, como wmi-client

Exemplo:

wmic -U Administrator%mysecret //192.168.20.20 "Select WorkingSetSize from Win32_Process Where CommandLine like '%java.exe%'"

Este comando fará uma consulta em 192.168.20.20, usando a conta de Administrador e a senha "mysecret", obterá a matriz de processos e procurará por qualquer processo com um nome parecido com java.exe

win32_battery é a classe certa para recuperar informações sobre a fonte de alimentação no seu notebok. Exemplos aqui . É só uma questão de usar a variável EstimatedChargeRemaining para obter as informações desejadas de Win32_Battery , usando o wmi-client no Linux.

Edit1: O Win32_Battery não funcionou na minha estação de trabalho, talvez por ser um desktop virtual e não ter baterias. No entanto, posso fazer outras consultas WMI:

[root@host ~]# wmic -U nicolas -W DOMAIN  //192.x.x.x "SELECT Caption FROM Win32_OperatingSystem"
Password for [DOMAIN\nicolas]:
CLASS: Win32_OperatingSystem
Caption
Microsoft Windows 7 Enterprise

Nesse caso, usei -W para informar ao comando qual é o domínio / grupo de trabalho que ele deve usar em vez do padrão WORKGROUP .

Coisas relacionadas: - coisas que você deve dar uma olhada no lado do Windows.

  • Como ativar o WMI no Windows XP ou Windows 7 - link
  • Como compilar o wimc (wmi-client) - link
  • Como abrir as portas de firewall do Windows para o WMI - link
por 24.12.2015 / 14:02