我正在试图弄清楚如何从日期中减去日期,假设我设置了当前日期
set $date
我如何减少它的日期并获得该期限的日期?
例如27jul2012
减损5变为22jul2012
答案 0 :(得分:5)
您可以使用date
来计算差异,例如
date -d "27jul2012 - 5 days" +%d%b%Y
答案 1 :(得分:1)
首先将其转换为秒,减去五天内的秒数并转换回来:
date --date=@$(($(date --date='27 Jul 2012' +'%s') - $((5 * 24 * 3600)) )) +%x
答案 2 :(得分:0)
您可以使用日期实用程序以秒为单位转换日期。见Bash script compare two date variables。
您还可以从当前日期执行几种不同的加法和减法。看看那里:http://linuxconfig.org/addition-and-subtraction-arithmetics-with-linux-date-command
答案 3 :(得分:0)
略短的版本:
date --date="@$(expr $(date +%s) - 432000)"
其中432000是5天内的秒数。