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

Re: Calcolo data



dom 21 marzo 2004, alle 22:56 (GMT+0100), MaX ha scritto:
> anni fa quando andavo a scuola avevo imparato un metodo semplicissimo 
> per calcolare la differenza tra due date tipo:
> job started at: 21-03-04 04:17:28
> job ended at:   22-03-04 05:32:58
> come faccio a calcolare la differenza in giorni,ore,minuti?

In uno script o da linea di comando:

INIZIO=`date -d '04-03-21 04:17:28' +%s`
FINE=`date -d '04-03-22 05:32:58' +%s`
TEMPO=$(($FINE-$INIZIO))
GIORNI=$(($TEMPO/60/60/24))
ORE=$(($TEMPO/60/60-$(($GIORNI*24))))
MINUTI=$(($TEMPO/60-$(($GIORNI*24*60))-$(($ORE*60))))
SECONDI=$(($TEMPO-$(($GIORNI*24*60*60))-$(($ORE*60*60))-$((MINUTI*60))))
echo "$GIORNI giorni, $ORE ore, $MINUTI minuti, $SECONDI secondi."

1 giorni, 1 ore, 15 minuti, 30 secondi.

Se vuoi fare modifiche ricorda che bash tronca i decimali:
echo $((150/60*60))  da infatti 120
non essendo 150/60=2,5 2,5*60=150
ma          150/60=2     2*60=120
-- 
Misura *ANTISPAM*: il mio indirizzo *non* e` alterato, ma
e` valido *solo* fino al 30 giugno 2004
Ave       Johan Haggi
ante diem undecimum Kalendas Apriles MMDCCLVII ab urbe condita



Reply to: