问题描述
我有一个 bash 脚本,我试图在其中传递年份并获取该年 1 月 1 日这一周的第一天。
我尝试过使用 date 命令:
yearsago=$(( 2021 - year))
date --date="$(date +'%Y-%m-01') - ${yearsago} year "
没有运气。例如,如果我输入年份:2020 作为变量。它应该找到该年的第一天,即 1 月 1 日,并找到 2020 年 1 月 1 日的星期几。
如果是星期一,则输出“1”,如果是星期二,则输出“2” 谢谢。
解决方法
请看下面的代码,它会给你一年的第一天过去:
# !/usr/bin/bash
year=2020
firstday=`date -d "01 Jan $year" +'%A,%d'`
echo "First day of the year '$year' is : '$firstday'"
输出:
“2020”年的第一天是:“星期三,01”
如果您只想获取 day ,请删除 %d 选项。
firstday=`date -d "01 Jan $year" +'%A`
输出:“2020”年的第一天是:“星期三”
,获取当年 1 月 1 日那一周的第一天。
看起来微不足道:
date -d "$year-1-1" +%a