根据%m-%d-%Y的给定日期,我们应该确定它是哪一天。示例:对于日期09-01-2017,输出应为Friday
%m-%d-%Y
09-01-2017
Friday
lqfhib0f1#
非常简单。只要使用date命令本身和正确的选项。
$ date -j -f '%m-%d-%Y' "09-01-2017" +'%A' Friday
irlmq6kh2#
如果你有这样的约会:
d="09-01-2017"
您需要将其重新格式化为“YYYY-MM-DD”
date -d $(echo $d|awk -F- '{print $3 "-" $1 "-" $2}') +%A # DOW
ylamdve63#
这是我通常做的。我会使用日期函数。你可以做“男人日期”并找到选项。
$ d=2020-08-20 \ $ date -d "$d" +%u \ 4 \ $ date -d "$d" +%A \ Thursday
ffscu2ro4#
DayOfWeek=$(date +%A)
这将生成星期几monday-sunday。如果输入日期的格式严格为MM-DD-YYYY,请使用以下格式
monday-sunday
MM-DD-YYYY
IFS='-' read -ra ADDR <<< "09-01-2017" formattedDate=${ADDR[2]}-${ADDR[0]}-${ADDR[1]} date -d $formattedDate +%A
第一行标记日期的组成部分,第二行重新排列它们
mm9b1k5b5#
您可以将其作为%m/%d%Y传递,这会被date命令识别。
$ date --date="`echo 09-01-2017| sed -e 's/-/\//g' `" +'%A' Friday
要验证它,请传递%F以获取ISO格式的文件
$ date --date="`echo 09-01-2017| sed -e 's/-/\//g' `" +'%A %F' Friday 2017-09-01
wribegjk6#
date +%A # let us see in a for loop for i in {1..7}; do date +%A --date=+${i}day; done Wednesday Thursday Friday Saturday Sunday Monday Tuesday
6条答案
按热度按时间lqfhib0f1#
非常简单。只要使用date命令本身和正确的选项。
irlmq6kh2#
如果你有这样的约会:
您需要将其重新格式化为“YYYY-MM-DD”
ylamdve63#
这是我通常做的。我会使用日期函数。你可以做“男人日期”并找到选项。
ffscu2ro4#
这将生成星期几
monday-sunday
。如果输入日期的格式严格为MM-DD-YYYY
,请使用以下格式第一行标记日期的组成部分,第二行重新排列它们
mm9b1k5b5#
您可以将其作为%m/%d%Y传递,这会被date命令识别。
要验证它,请传递%F以获取ISO格式的文件
wribegjk6#