我想使用 Linux 命令将年转换为天(过去)。例如:
用户给出的号码:10年前
程序应计算 10 年前的天数总和(例如:10*12*31(年/月/日)--> 3720 天)。
程序将其与今年开始的当前天数(例如:3720 + 223)相加并返回。
最佳答案
自 1970/01/01(Unix“第一天”)以来的当前时间(以秒为单位):
dnow=$(date +"%s")
正好是10年前的时间:
dthen=$(date -d '-10 years' +"%s")
计算一年中的今天:
dity=$(date +"%j")
然后只需将一个减去另一个,除以一天中的秒数,然后加上今天的日期:
timespan=$(( (dnow - dthen) / (24*60*60) + dity ))
您应该在 $dthen
之后设置 $dnow
,以避免差一错误。
我不确定为什么有人想要这样做,所以如果我误解了您的问题,请回到我们这里。
关于linux - 如何将年转换为天(过去)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31909203/