Uptime para tempo humano

Publicado por Djames Suhanko 29/01/2006

[ Hits: 5.955 ]

Homepage: http://phantomclone.com

Download tempo.c




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.

  



Esconder código-fonte

#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

Scripts recomendados

Ordenação QuickSort

Números primos da seqüência Fibonacci

Inverte frase

Calcular expressões aritméticas com 2 termos

Relógio em C


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts