私は2014年11月17日から現在の職位で勤務を始めました。それから数日が過ぎたかどうか知りたいです。 Linuxを使ってシンプルで良いソリューションを考え出す方法についてのアイデアはありますか?
答え1
echo $(( (`date +%s` - `date +%s -d '2014/11/17'`) / 86400 )) days ago
答え2
まあ、表面的には:
$ date --date="-239 days"
Mon Nov 17 15:25:40 CET 2014
スクリプトで(非常に効率的ではありませんが…おそらくうるう秒を処理できますか?;))
i=0
result=""
while [ "$result" != "20141117" ]
do
i=$((i+1))
result=$(date --date="-$i days" +%Y%m%d)
done
echo "$i" days have passed since "$result"
答え3
コマンドラインでPythonを試してみました。
$ python -c "import datetime; print datetime.date.today() - datetime.date(2014,11,17)"
246 days, 0:00:00
答え4
以下はPHPの例です。
<?php
$o1 = date_create('2014-11-17');
$o2 = date_create();
$o3 = date_diff($o2, $o1);
echo 'days: ', $o3->days, "\n";
結果:
days: 1927