shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Horas em segundos


From: Claudio
Subject: Re: [shell-script] Horas em segundos
Date: Fri, 23 Apr 2004 19:11:22 -0300
User-agent: Mozilla Thunderbird 0.5 (X11/20040208)

Voce pode converter as horas assim:

converta a data inicial assim:

date -d 'Fri Apr 23 18:33:00' +%s

but3k4@slack:~$ date -d 'Fri Apr 23 18:33:00' +%s
1082755980

converta agora a data final:

but3k4@slack:~$ date -d 'Fri Apr 23 18:53:00' +%s
1082757180

Pegue o resultado da data final e diminua pela data inicial:

but3k4@slack:~$ echo 1082757180-1082755980 | bc
1200

depois divida este valor por 60:

but3k4@slack:~$ echo 1200/60 | bc 20

pronto, agora voce tem o valor em minutos de quando tempo o cara ficou logado. Dae em diante eh so fazer o script.

qualquer coisa, eu te ajudo a fazer.

:D



opa escreveu:

Acho que a string para o date não pode ser em segundos???

Lembro-me vagamente que já senti necessidade de algo parecido e não pude contar com o "date".

Talvez isto possa ajudar!?

var_percorrido=3009
var_percorrido_human=$[var_percorrido/60]
residuo=0$[$var_percorrido-$var_percorrido_human*60]
var_percorrido_human=$var_percorrido_human:${residuo#${residuo%??}}
echo var_percorrido=$var_percorrido
echo var_percorrido_human=$var_percorrido_human


----------------------------------------------------------------
From: Marco Sinhoreli <address@hidden>
Date: Fri, 23 Apr 2004 11:21:52 -0300

Opa :-)

Consegui com o comando date transformar as horas atuais em segundos:
var_inicio=$(date +%s) # Esta var eh setada no inicio do questionário

Em cada questão estou verificando o tempo percorrido...
var_percorrido=$[ `date +%s` - $var_inicio ]

.... e o restante para a concusão considerando o teto em 1 hora...
var_termino=$[ 3600 - $var_percorrido ]

....finalizando se var_termino estrapolou
[ $var_termino -le 0 ] && comandos...


Ai me veio outro problema
Transformar $var_ver e $var_termino em MM:SS
Tentei isso e não resolveu  :-(

var_percorrido_human=$(date -d "00:$var_percorrido" "+%T")
var_termino_human=$(date -d "00:$var_termino" "+%T")

Em Sex, 2004-04-23 às 10:47, opa escreveu:
Dispensando o cron, vou passar mais ou menos uma filosofia que me parece apropriada.

Quando seu script de avaliação inicia ele pode chamar outro em segundo plano que recebe o PID do primeiro e salva a hora em uma variável. Ao encerrar o tempo poderia gravar a hora em um arquivo de log do candidato, ou geral, se você tiver interesse.

O script em segundo plano, com um simples sleep de 55m poderia avisar o candidato em seu terminal, que restam 5 minutos para o final.

Poderia tentar atualizar o tempo em algum ponto da tela
minuto a minuto com sleeps, mas daí já acho isso pouco técnico e seria melhor outra forma de faze-lo, que desconheço.

Após um novo sleep, agora de 5m, uma mensagem é enviada para a tela e o script do candidato recebe um kill. Daí você poderia passar para um log tudo o que desejar, antes desse script de segundo plano terminar.



----------------------------------------------------------------
From: Marco Sinhoreli <address@hidden>
Date: Fri, 23 Apr 2004 09:20:03 -0300

Olá pessoal,

Tenho um shell script para uma avaliação de conhecimento em inform
ática
de alguns alunos aqui do Centro Público para serem contratados como
monitores nas Escolas Municipais.

Esta avaliação será aplicada sendo que o aluno tem no máximo 1 h
ora para
a sua conclusão. Eu gostaria de inserir isso no shell script da seguin
te
maneira:

Localizar a hora inicial em segundos.
Localizar a hora durante o percurso da avaliação para informar tempo
percorrido, tempo para finalização e se foi alcançado o teto máx
imo
permitido chamar uma função avisando sobre o termino da avaliaçã
o.
ps:
Pontos interessantes neste modelo de avaliação:
É todo feito em shell script com o uso do Xdialog e não existe a
possibilidade de rodar outros aplicatívos (passiveis da famosa cola :-
)
no ambiente gráfico pois no momento do login pelo GDM o aluno selecion
a
como gerenciador de janelas o aplicatívo de avaliação e com as dic
as de
ontem as questóes nunca (ou quase nunca) são na mesma ordem.

[]s

Marco Sinhoreli




---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------

Links do Yahoo! Grupos
Para visitar o site do seu grupo, acesse:
http://br.groups.yahoo.com/group/shell-script/

Para sair deste grupo, envie um e-mail para:
address@hidden

O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html





reply via email to

[Prev in Thread] Current Thread [Next in Thread]