shell 根据当前时间获取周一和周日时间戳

#!/bin/sh

#根据当前时间获取本周的周一零点到下周一零点时间
#./getWeek.sh

#根据传入的时间戳获取
#./getWeek.sh -t 12356783

#根据传入的日期获取
#./getWeek.sh -d 2015-12-05
oneSeconds=86400
sevenSeconds=`expr $oneSeconds \* 7 `

if [ $1 ]
then
    if [ $1 = '-t' ]
    then
        if [ $2 ]
        then
            day=`date -d@$2 +%Y-%m-%d`
        else
            day=`date +%Y-%m-%d`
        fi  
    elif [ $1 = '-d' ]
    then
        if [ $2 ]
        then
            day=$2
        else
            day=`date +%Y-%m-%d`
        fi  
    else
            day=`date +%Y-%m-%d`
    fi  
else
    day=`date +%Y-%m-%d`
fi

dayTime=`date -d "$day" +%s`

weekNum=`date -d "$day" +%u`

if [ $weekNum == 1 ] 
then
    startTime=$dayTime
else
    startTime=`expr $dayTime - $weekNum \* $oneSeconds + $oneSeconds`
fi

endTime=`expr $startTime + $sevenSeconds - 1`

echo `date -d@$startTime "+%Y-%m-%d %H:%M:%S"`
echo $startTime

echo `date -d@$endTime "+%Y-%m-%d %H:%M:%S"`
echo $endTime

 

转载于:https://my.oschina.net/u/1390267/blog/687753

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值