如何将年数转换为天数(过去)?

时间:2015-08-09 21:54:35

标签: linux bash command

我希望使用Linux命令将岁月转换为天(过去)。例如:

  1. 用户给出的号码:10年前

  2. 该计划应计算10年前的天数总和(e.x:10 * 12 * 31(年/月/天) - > 3720天)。

  3. 该计划与今年开始的当前天数(例如:3720 + 223)相加并归还。

2 个答案:

答案 0 :(得分:0)

这将为您提供一年中的日期,即10年后的日期:

date -d '+10 years' +"%j"

答案 1 :(得分:0)

自1970/01/01(Unix'第1天')以来的当前时间(以秒为单位):

dnow=$(date +"%s")

10年前的时间:

dthen=$(date -d '-10 years' +"%s")

计算今年的今天:

dity=$(date +"%j")

然后从另一个中减去一个,除以一天中的秒数,并添加今天的每日:

timespan=$(( (dnow - dthen) / (24*60*60) + dity ))

您应该在$dnow之后设置$dthen,以避免出现一个错误。

我不确定为什么有人会这样做,所以如果我误解了你的问题,请回到我们这里。