免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6616 | 回复: 1
打印 上一主题 下一主题

求助:如何得到字符串20040101表示的日期为星期几? [复制链接]

论坛徽章:
0
1 [报告]
发表于 2003-01-22 00:52 |显示全部楼层

求助:如何得到字符串20040101表示的日期为星期几?

应该不是很难。
你以今天为基准,今天是2003年1月22日,星期三。
将字符串20040101截成theyear=2004;themonth=01;theday=01;
然后和基准时间相比较,看相查多少天。注意某些年是润年的问题。我相信你一定能够搞定的。
然后将这个时间差,除以7取余。
如果余是1,那么就是星期四;如果余是2,那么就是星期五......
还有注意字符串中时间是在基准时间之前,还是在基准时间之后。

用shell写是很简单的,我就不为你代劳了。不过我还是觉得这个问题用c写会效率更高一些。

最后,祝你写脚本顺利。

论坛徽章:
0
2 [报告]
发表于 2003-01-22 14:39 |显示全部楼层

求助:如何得到字符串20040101表示的日期为星期几?

其实啊,还有一个更好用,更省事的招:
string=$1   #eg input is 20040101
yy=`echo $str|cut -c 1-4`
mmdd=`echo $str|cut -c 5-8`
thedate=`echo ${mmdd}0000$yy`
olddate=`date '+%m%d%H%M%Y'`
date $thedate
date '+a'
date $olddate

不过用的时候一定要三思啊。改变机器时间会使一些系统出现不可预料的后果。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP