SunOS中的日期起始日期字符串



如何从SunOS 5.10 shell脚本中的日期字符串中获得星期五至星期四之类的日期名称。用户将以yyyymmdd(20130816)格式输入日期,然后我必须获得日期名称?

获取一周中的天数:

更新-更完整的脚本:

#!/bin/ksh
date="$1"
DAYMAP="0,SUNDAYn1,MONDAYn2,TUESDAYn3,WEDNESDAYn4,THURSDAYn5,FRIDAYn6,SATURDAY"
eval $(echo "${date}" | nawk -F- '{printf("year=%s month=%s day=%sn", $1, $2, $3)}')

DAY=`cal "${month}" "${year}" | nawk -v day="${day}" '
  FNR > 2 {
    for(i=1; i <= NF; i++)
      if ( $i == day) {
        #printf("day->[%d] row->[%d]n", $i, FNR-2)
        printf("%dn", (NF == 7 || FNR!=3) ? i-1 : i+(6-NF))
        exit
      }
  }
'`
echo $DAYMAP | grep $DAY | cut -f2 -d','

然后使用地图打印当天的全名。星期天是0。

输入格式为:2013-08-16

最新更新