免费注册 查看新帖 |

Chinaunix

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

Shell中的date命令 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-11 10:20 |只看该作者 |倒序浏览
请问下,怎样用date命令来显示昨天的时间?谢谢大家了 !!

论坛徽章:
0
2 [报告]
发表于 2005-08-11 10:40 |只看该作者

Shell中的date命令

看看你的date命令有没有-d参数

论坛徽章:
0
3 [报告]
发表于 2005-08-11 12:59 |只看该作者

Shell中的date命令

以下是我在公司里写的,不知道对你有帮助没有,大家不要笑话。

#########################################################
#               function get_before_date()                 #
#########################################################
# description : acquire yesterday
get_before_date()
{
        # step 1 : get current date
        MONTH=`${DATE} +%m`
        DAY=`${DATE} +%d`
        YEAR=`${DATE} +%Y`
        MONTH=`${EXPR} ${MONTH} + 0`
        DAY=`${EXPR} ${DAY} - 1`
       
        # step 2 : caculate yesterday
        if [ ${DAY} -eq 0 ]
        then
                MONTH=`${EXPR} ${MONTH} - 1`  
                if [ ${MONTH} -eq 0 ]
                then
                        MONTH=12
                        DAY=31
                        YEAR=`${EXPR} ${YEAR} - 1`  
                else
                        case ${MONTH} in
                        01|1|03|3|05|5|07|7|08|8|10|12) DAY=31;;
                        04|4|06|6|09|9|11) DAY=30;;
                        2|02)
                                if [ `${EXPR} ${YEAR} % 4` -eq 0 ]
                                then
                                if [ `${EXPR} ${YEAR} % 400` -eq 0 ]
                                then
                                        DAY=29
                                elif [ `${EXPR} ${YEAR} % 100` -eq 0 ]
                                then
                                        DAY=28
                                else
                                        DAY=29
                                fi
                    else
                                        DAY=28
                                fi
                                ;;
            esac
                fi
        fi
       
        # step 3 : format date and return it
        BEFORE_DATE=`printf "%04d%02d%02d" ${YEAR} ${MONTH} ${DAY}`
        ${ECHO} ${BEFORE_DATE}
       
}
wayy2008 该用户已被删除
4 [报告]
发表于 2005-08-11 13:26 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP