鉴于上周日返回日期[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我知道如何计算前一个星期日date -dlast-sunday +%Y-%m-%d以及如何使用date +%Y-%m-%d --date "2017-10-10 +3 day"添加或删除给定日期的天数(周/年)。我无法实现的是在输入为给定日期时获取上一个星期日。

我已经试过了

date -d -dlast-sunday +%Y-%m-%d --date "2017-12-15" date +%Y-%m-%d --date "2017-10-10 -dlast-sunday"

linux bash date
1个回答
1
投票

使用%u,知道你需要减去多少天才能到达上一个星期天。例如这样:

d=2017-10-10 ; u=$(date +%u --date $d) ; date +%Y-%m-%d --date "$d -$u day"
© www.soinside.com 2019 - 2024. All rights reserved.