Uptime para tempo humano
Publicado por Djames Suhanko 29/01/2006
[ Hits: 6.413 ]
Homepage: http://phantomclone.com
Tive que converter o uptime da maquina para tempo legível. Primeiramente, recolhi o valor com um script (que fazia outras coisas além dessa, óbviamente):
cat /proc/uptime|cut -f1 -d. >/tmp/tempo
Depois, chamava o programa em C de dentro desse script.
#include <stdio.h>
main (int argc, char *argv[])
{
if (!(argv[1]))
{
printf("Voce deve indicar o caminho e nome do arquivo a ler\n");
printf("Ex.: %s /home/usuario/arquivo_com_valor_numerico.txt\n",argv[0]);
return 1;
}
int tempo;
FILE *TEMPO;
TEMPO=fopen(argv[1],"r");
while (!feof(TEMPO))
{
fscanf(TEMPO,"%d",&tempo);
}
fclose(TEMPO);
int HORAS_SEG;
int MINUTOS;
//Converte os segundos para DIAS HORAS MINUTOS
//segundos de 1 dia
int DIA_TEM=86400;
//Quantos dias isso da?
int DIAS=(tempo / DIA_TEM); // resultado de dia
int RESTO_SEG=tempo % DIA_TEM; //resto em segundos
//O resto pode estar no maximo em horas
int HORAS=(RESTO_SEG / 60)/60;
if (HORAS > 0)
{
HORAS_SEG=(HORAS * 60) * 60;
MINUTOS=(RESTO_SEG - HORAS_SEG)/60;
}
else
{
MINUTOS=(RESTO_SEG/60);
}
if (argv[2])
{
FILE *ARQUIVO;
ARQUIVO=fopen(argv[2],"a+t");
fprintf(ARQUIVO,"%d %d %d", DIAS, HORAS, MINUTOS);
fclose(ARQUIVO);
}
else
{
printf ("%d %d %d\n", DIAS, HORAS, MINUTOS);
}
} //The End
Calcula média de notas do aluno
Nenhum comentário foi encontrado.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Instalar Dual Boot, Linux+Windows. (5)
Conky, alerta de temperatura alta (16)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









