@@ -259,6 +259,41 @@ calcular_overhead() {
259
259
echo " $consumo_overhead "
260
260
}
261
261
262
+ # Função para calcular custos energéticos
263
+ calcular_custos_energia () {
264
+ local consumo_total=$1
265
+ local custo_kwh=$2
266
+
267
+ # Cálculos de consumo
268
+ local consumo_diario=$( echo " $consumo_total * 24 / 1000" | bc -l)
269
+ local consumo_semanal=$( echo " $consumo_diario * 7" | bc -l)
270
+ local consumo_mensal=$( echo " $consumo_diario * 30" | bc -l)
271
+
272
+ # Cálculos de custo
273
+ local custo_diario=$( echo " $consumo_diario * $custo_kwh " | bc -l)
274
+ local custo_semanal=$( echo " $consumo_semanal * $custo_kwh " | bc -l)
275
+ local custo_mensal=$( echo " $consumo_mensal * $custo_kwh " | bc -l)
276
+
277
+ # Formatação com duas casas decimais
278
+ consumo_diario=$( printf " %.2f" " $consumo_diario " )
279
+ consumo_semanal=$( printf " %.2f" " $consumo_semanal " )
280
+ consumo_mensal=$( printf " %.2f" " $consumo_mensal " )
281
+ custo_diario=$( printf " %.2f" " $custo_diario " )
282
+ custo_semanal=$( printf " %.2f" " $custo_semanal " )
283
+ custo_mensal=$( printf " %.2f" " $custo_mensal " )
284
+
285
+ # Log de custos
286
+ {
287
+ log " Detalhamento de Consumo e Custo:"
288
+ printf " Consumo Diário: %.2f kWh (R$ %.2f)\n" " $consumo_diario " " $custo_diario "
289
+ printf " Consumo Semanal: %.2f kWh (R$ %.2f)\n" " $consumo_semanal " " $custo_semanal "
290
+ printf " Consumo Mensal: %.2f kWh (R$ %.2f)\n" " $consumo_mensal " " $custo_mensal "
291
+ } >&2
292
+
293
+ # Retornar valores para uso posterior, se necessário
294
+ echo " $consumo_diario ,$consumo_semanal ,$consumo_mensal ,$custo_diario ,$custo_semanal ,$custo_mensal "
295
+ }
296
+
262
297
# Função principal de cálculo
263
298
calcular_consumo_total () {
264
299
local consumo_cpu=$( calcular_consumo_cpu)
@@ -267,32 +302,24 @@ calcular_consumo_total() {
267
302
local overhead=$( calcular_overhead " $consumo_cpu " " $consumo_hds " " $consumo_ram " )
268
303
269
304
local consumo_total=$(( consumo_cpu + consumo_hds + consumo_ram + overhead))
270
- local consumo_diario=$(( consumo_total * 24 ))
271
- local consumo_mensal=$(( consumo_diario * 30 ))
272
-
273
- # Obter custo do kWh
274
305
local custo_kwh=$( obter_custo_kwh)
275
- local custo_mensal=$( echo " scale=2; $consumo_mensal * $custo_kwh / 1000" | bc)
276
306
307
+ # Log de resumo de consumo
277
308
log " Resumo de Consumo de Energia:"
278
309
printf " CPU: %dW\n" " $consumo_cpu "
279
310
printf " HDs: %dW\n" " $consumo_hds "
280
311
printf " RAM: %dW\n" " $consumo_ram "
281
312
printf " Overhead: %dW\n" " $overhead "
282
313
printf " Consumo Total: %dW\n" " $consumo_total "
283
- echo " "
284
- echo " Estimativas:"
285
- printf " Consumo Diário: %d Wh\n" " $consumo_diario "
286
- printf " Consumo Mensal: %d Wh (%d kWh)\n" " $consumo_mensal " " $(( consumo_mensal / 1000 )) "
287
- printf " Custo Mensal: R$ %.2f (kWh: R$ %.2f)\n" " $custo_mensal " " $custo_kwh "
288
-
289
- # Dicas específicas para CrunchBang++
290
- if [[ " $SISTEMA " == " crunchbangplusplus" ]]; then
291
- log " Dicas de Economia para CrunchBang++:"
292
- echo " - Use gerenciadores de energia leves"
293
- echo " - Otimize inicialização do sistema"
294
- echo " - Considere desabilitar serviços não essenciais"
295
- fi
314
+
315
+ # Calcular custos detalhados
316
+ calcular_custos_energia " $consumo_total " " $custo_kwh "
317
+
318
+ # Dicas de economia
319
+ log " Dicas de Economia de Energia:"
320
+ echo " - Desligue dispositivos não utilizados"
321
+ echo " - Use modo de economia de energia"
322
+ echo " - Considere substituir HDs por SSDs"
296
323
}
297
324
298
325
# Verificar privilégios
@@ -307,8 +334,10 @@ verificar_dependencias
307
334
# Executar cálculo
308
335
calcular_consumo_total
309
336
310
- # Dicas gerais de economia
311
- log " Dicas de Economia de Energia:"
312
- echo " - Desligue dispositivos não utilizados"
313
- echo " - Use modo de economia de energia"
314
- echo " - Considere substituir HDs por SSDs"
337
+ # Dicas específicas para CrunchBang++
338
+ if [[ " $SISTEMA " == " crunchbangplusplus" ]]; then
339
+ log " Dicas de Economia para CrunchBang++:"
340
+ echo " - Use gerenciadores de energia leves"
341
+ echo " - Otimize inicialização do sistema"
342
+ echo " - Considere desabilitar serviços não essenciais"
343
+ fi
0 commit comments