Ho una data specifica, ad esempio 2013-10-31 e ho bisogno di determinare con precisione il giorno successivo (prendendo in considerazione l'ora legale, gli anni bisestili, i minuti bisestili, i fusi orari, ecc.). Non ho modo di sapere se la data è alla fine di un mese / anno / ecc. E spero sinceramente di non dovermi preoccupare di questo.
In Linux, digito semplicemente:
date1="2013-10-31"
day_after='date -ud"$date1 1 days" +%Y-%m-%d'
echo "$day_after" => 2013-11-01
Tuttavia, quando provo lo stesso in Darwin / BSD:
date1="2013-10-31"
day_after='date -v1d -ujf"%Y-%m-%d" $date1 +%Y-%m-%d'
echo "$day_after" => 2013-10-01
Come posso ottenere BSD per fare i calcoli di data corretta?