Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash osx星期一日期本周聚会_Bash_Macos_Date - Fatal编程技术网

Bash osx星期一日期本周聚会

Bash osx星期一日期本周聚会,bash,macos,date,Bash,Macos,Date,我需要得到所有日期的数组 在OSX中的Bash4中显示本周的 我试着确定星期一的日期, 但在OSX上,日期与Linux(gdate)不一样 我需要的结果是: array=( 'YYYY-MM-DD', # MONDAY 'YYYY-MM-DD', # TUESDAY 'YYYY-MM-DD', # WEDNESDAY 'YYYY-MM-DD', # THURSDAY 'YYYY-MM-DD', # FRIDAY 'YYYY-MM-DD', # SATURDAY 'YYYY-MM-DD') # S

我需要得到所有日期的数组 在OSX中的Bash4中显示本周的

我试着确定星期一的日期, 但在OSX上,日期与Linux(gdate)不一样

我需要的结果是:

array=(
'YYYY-MM-DD', # MONDAY
'YYYY-MM-DD', # TUESDAY
'YYYY-MM-DD', # WEDNESDAY
'YYYY-MM-DD', # THURSDAY
'YYYY-MM-DD', # FRIDAY
'YYYY-MM-DD', # SATURDAY
'YYYY-MM-DD') # SUNDAY
我是bash的新手,尝试了2个小时 在网上找东西,没有成功


非常感谢你的帮助。

你试过男人约会吗

date -v-monday
获取调整后的日期,使工作日为前一个星期一。如果是星期一,则给出当前日期,因此如果放弃小时、分钟和秒,则得到一周中第一天的日期

date -v-monday +'%Y-%m-%d'
获取您请求的格式。要获取下一个日期,您可以使用-v进行进一步调整,例如,
date-v-monday-v+1d+%Y-%m-%d'
给出了本周星期二的日期

因此,要充分回答您的问题:

#!/bin/bash

for i in $(seq 0 6)
do
    WEEKDAYS[$i]=`date -v-monday -v+"$i"d +'%Y-%m-%d'`
done;

或者,作为一个班轮<代码>数组=($(对于{0..6}中的i;do date-v-monday-v+“$i”d+%Y-%m-%d';done))您可以使用{0..6}中的i的
将内容保存在bash中。此外,不要用这种方式来引用引号,请考虑<代码>工作日[$i]=$(日期-V-MONDY-V+${I} D ++%F)。它的工作就像一个符咒:)谢谢你的帮助!