textmode
(usa Slackware)
Enviado em 14/06/2016 - 20:39h
julianocastro escreveu:
Olá,
Pessoal sou novato no linux, gostaria fazer algo que controle o tempo de uso do pc. Sei que existe o comando uptime, que mostra o valor em horas que o pc ficou ligado e quero jogar este valor para um ".txt". Gostaria de saber se tem como eu executar este ".sh" no momento que o pc for desligado. Na real o que eu quero fazer e calcular o valor de horas utilizadas, para saber o valor gasto "aproximadamente" de energia em kWh do computador por mês :).
Não sei se fui claro, desde já agradeço pela ajuda.
Para desktops que ligam e desligam com frequência, você vai precisar de alguma coisa que fique monitorando a máquina e incrementando um contador, é certeza que tem várias coisas prontas nesse sentido como os colegas já mencionaram. Já pra o problema de estimar o consumo energético, será outro problema sério como também já mencionaram, mas essa parte parece que você vai resolver sozinho.
Se for resolver construir algo, precisa levar em consideração os crashs da máquina porque, se você criar scripts que marcam a hora de início e hora do fim da máquina e colocá-los no boot e no shutdown, você sempre calcularia a quantidade de horas pela diferença entre boot e shutdown mas quando der crash você não terá o shutdown e perderá a marcação. Minha sugestão é criar um script que incrementa um contador num arquivo num intervalo determinado, daria até para colocá-lo no cron.
Um exemplo de script para colocar no cron:
#!/bin/bash
declare -i contador
declare -i minutos=$1
file=$(date +'%Y%m.txt'); # cuidado com o timezone!
[[ ! -f $file ]] && echo -n 0 > $file
contador=$(<$file)
echo $contador
(( contador += minutos ))
echo -n $contador > $file
No cron, usaría-se algo como:
# min hour day month day-of-week command
#(0-59) (0-23) (1-31) (1-12) (0-6)
#------------------------------------------------------------
*/10 * * * * script.sh 10
(*precisa verificar a sintaxe do crontab na sua máquina)
se for invocar o script a cada 30 minutos ao invés de 10, use
script.sh 30 .
A ideia era só isto mesmo, e você só perderia os últimos 10 ou 30 minutos da contagem.
[]'s
--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------
https://perspicazsite.wordpress.com