免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: usercool
打印 上一主题 下一主题

菜鸟求助-请大家帮忙!!!!谢谢 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2008-11-25 22:08 |只看该作者
bash 下通过测试 。 solaris 下用bash 也可以,自己改改吧。

还有,你标题信息含量为 0

#!/bin/sh -x

# 当前时间
Y=$(date +%Y)
M=$(date +%m)
D=$(date +%d)
H=$(date +%H)

# Month_Day 是当前月的大天数
[ $(($Y % 4)) -eq 0 ] && Month_Day=29 || Month_Day=28

if [ $M -eq 2 ]; then
        Month_Day=$Feb_Day
elif $( echo "1 3 5 7 8 10 12"| grep $M ); then
        Month_Day=31
else
        Month_Day=30
fi

# 年判断
Month_Add()
{
        if [ $M -lt 12 ]; then
                Month=$(($M + 1))
                Year=$Y
        else
                Month=01
                Year=$(($Y + 1))
        fi
        echo Month $Month
}

# 日期判断
Day_Add()
{
        if [ $D -lt $Month_Day ]; then
                Day=$(($D + 1))
                Month=$M
                Year=$Y
        else
                Day=01
                Month_Add
        fi
}

# 时间判断
if [ $H -lt 16 ]; then
        Hour=$(($H + )
        Day=$D
        Month=$M
        Year=$Y
else
        Hour=$(($H - 16))
        Day_Add
fi

# 输出加 8 小时后的 时间
echo ${Year}_${Month}_${Day}_${Hour}

[ 本帖最后由 hotsnow 于 2008-11-25 22:13 编辑 ]

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
12 [报告]
发表于 2008-11-25 22:14 |只看该作者

回复 #9 usercool 的帖子

有 cal 命令么?

论坛徽章:
0
13 [报告]
发表于 2008-11-25 23:55 |只看该作者

回复 #10 WinnerBoy 的帖子

呵呵,看来是没人帮写了,solaris 的时间处理真的是很麻烦

论坛徽章:
0
14 [报告]
发表于 2008-11-26 00:02 |只看该作者
date +%Y%m%d%H -d '8 hour'

论坛徽章:
0
15 [报告]
发表于 2008-11-26 00:23 |只看该作者
原帖由 spyman 于 2008-11-26 00:02 发表
date +%Y%m%d%H -d '8 hour'

nonGNUdate 没有-d参数。

论坛徽章:
0
16 [报告]
发表于 2008-11-26 00:26 |只看该作者
原帖由 spyman 于 2008-11-26 00:02 发表
date +%Y%m%d%H -d '8 hour'


你的回复让我再一次认识到我是多么的无知!

论坛徽章:
0
17 [报告]
发表于 2008-11-26 00:53 |只看该作者
原帖由 hotsnow 于 2008-11-26 00:26 发表


你的回复让我再一次认识到我是多么的无知!

solaris下的date不是GNU date,所以没有-d参数。
我的回复会不会让你感到更无知呢
开玩笑的,不准打我头。

论坛徽章:
0
18 [报告]
发表于 2008-11-26 01:11 |只看该作者
原帖由 walkerxk 于 2008-11-26 00:53 发表

solaris下的date不是GNU date,所以没有-d参数。
我的回复会不会让你感到更无知呢
开玩笑的,不准打我头。


这次恰巧我测试的solaris下面的date 有 -d 参数,呵呵

-bash-3.00$ uname -a
SunOS solaris 5.10 Generic_118855-33 i86pc i386 i86pc Solaris
-bash-3.00$ date +%Y%m%d%H -d '8 hour'
2008112609



[ 本帖最后由 hotsnow 于 2008-11-26 01:13 编辑 ]

论坛徽章:
0
19 [报告]
发表于 2008-11-27 17:32 |只看该作者
原帖由 WinnerBoy 于 2008-11-25 21:06 发表
夸日夸月夸年



是啊,从文件中取出时间 + 8小时,当然要考虑到夸日夸月跨年了

论坛徽章:
0
20 [报告]
发表于 2008-11-27 17:35 |只看该作者
原帖由 hotsnow 于 2008-11-25 22:08 发表
bash 下通过测试 。 solaris 下用bash 也可以,自己改改吧。

还有,你标题信息含量为 0

#!/bin/sh -x

# 当前时间
Y=$(date +%Y)
M=$(date +%m)
D=$(date +%d)
H=$(date +%H)

# Month_Day 是当前 ...


谢谢哥们!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP