假设今天是2016年6月30日星期四。
然后 <asp:Label ID="lblItems" runat="server" Text="SemesterCode: "></asp:Label>
<asp:DropDownList ID="ddlItems" AppendDataBoundItems="true" runat="server">
<asp:ListItem Text=" -- Select -- " Value="-1"></asp:ListItem>
</asp:DropDownList>
为date +%Y%m%d
,20160630
为date -d'last-thursday' +%Y%m%d
,20160623
为date -d'next-thursday' +%Y%m%d
。
但是,20160707
为date -d'last-wednesday' +%Y%m%d
,20160629
为date -d'next-wednesday' +%Y%m%d
。
如果今天天,是否会有包含版本的20160706
,它将返回今天的日期?
答案 0 :(得分:2)
包含下周工作日内置,只需使用-d"Thursday"
,(无前缀),如果今天是星期四或下一个,date
将返回today
周四如果没有。
但是date
没有包含最后,所以这里是 包含上周工作日 kludge功能:
ilast() { a=$(date -d'today' "+%A") ; b=$(date -d"$1" "+%A") ; \
[ $a != $b ] && echo -n "last " ; echo $b ; }
测试,(也显示ilast
的用法):
for d in Sun. Mon. Tue. Wed. Thu. Fri. Sat. ; do \
echo -n $(ilast $d)" " ; \
date -d"$(ilast $d)" "+%Y%m%d" ; \
done | column -t
输出:
last Sunday 20160626
last Monday 20160627
last Tuesday 20160628
last Wednesday 20160629
Thursday 20160630
last Friday 20160624
last Saturday 20160625
该功能将 $ a 设置为today
的工作日, $ b 设置为 $ 1 的工作日,是一个不同的工作日,除非 $ 1 是今天的工作日。因此,如果工作日 $ a 和 $ b 不相等,(七天中有六天他们会有所不同),我们会预先“last”到工作日的长名。如果工作日 $ a 且 $ b 相等,请不要打印“last”,因为,(七天中的一天),默认包含下一个已经做了所需的事情。