问题:
任意给定一个日期,求其上一个周一的日期。
如,指定2009-04-08 ,则其上一个周一的日期是2009-04-06
或如,指定2009-04-06,则其上一个周一的日期是2009-03-30.
#!/bin/sh
if [ $# -ne 1 ]
then
echo "Usage: $0 YYYYMMDD"
exit fi
now=`date +%Y%m%d %H:%M:%S `
date -s $1 > /dev/null
echo "last monday is $(date -d last-monday +%Y%m%d)"
date -s $now > /dev/null
唯一的不足是date -s需要root权限.
|
#/bin/bash
a=`date +%u -d "$1"`
b=`expr $a - 1`
if [ $b -eq 0 ]
then
date -d "-7 day $1"
else
date -d "-${b} day $1"
fi
这个比较需要有想法^_^
|
阅读(782) | 评论(0) | 转发(0) |