X 이후의 일수를 계산하는 현명한 방법은 무엇입니까? 시작했습니다. 지금까지 며칠이 지 났는지 알고 싶습니다.

2014 년 11 월 17 일부터 현재 위치에서 일하기 시작했습니다. 지금까지 며칠이 지 났는지 알고 싶습니다. Linux를 사용하여 간단하고 멋진 솔루션을 만드는 방법에 대한 아이디어가 있습니까?



답변

echo $(( (`date +%s` - `date +%s -d '2014/11/17'`) / 86400 )) days ago

답변

글쎄, 그것의 얼굴에 :

$ 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"

답변

커맨드 라인에서 파이썬을 시도했습니다.

$ python -c "import datetime; print datetime.date.today() - datetime.date(2014,11,17)"
246 days, 0:00:00 

답변

다음은 PHP를 사용한 예입니다.

<?php
$o1 = date_create('2014-11-17');
$o2 = date_create();
$o3 = date_diff($o2, $o1);
echo 'days: ', $o3->days, "\n";

결과:

days: 1927

https://php.net/function.date-diff