AIX下取前一天时间

转帖:http://blog.sina.com.cn/s/blog_541a3cf10101expx.html

AIX的默认dtae命令是不支持-d参数的,导致大家写脚本很痛苦,没法简单取得前一天的时间。

下面有简单方式可以取得:

YESTERDAY=`TZ=aaa24 date +%Y%m%d`
echo $YESTERDAY

或者是

#!/bin/sh
TZ=TZ+24
date1=`date +20%y%m%d`
echo "$date1"


bash-3.2# date
Wed Dec  5 20:27:47 BEIST 2012

bash-3.2#TZ=TZ+24
bash-3.2#date1=`date +20%y%m%d`
bash-3.2#echo "$date1"
20121204

 

$TZ在AIX中参数是代表时区的,那+24小时在输出date时自然会自动-24小时得到了前一天的时间。

附:

AIX 调整时区

1、关于如何判断AIX是否使用了夏时制
 可以用echo $TZ命令看时区来判断,时区以DT结尾的就使用了夏时制。如:
$ hostname; echo $TZ
aixserver2
CST6CDT                (yndaijian: 查CST6为美国中央时间?)
$

$ hostname; echo $TZ
aixserver1
CST6CDT
$

2、关于时间同步
    使用timed是比较简单的方法,设置步骤如下:
    以一台时间准确的机器为timed服务器 startsrc -s timed -a "-M -c"
    以要调整时间的机器为timed客户端 startsrc -s timed,若几分钟内仍没有同步,可以refresh -s timed 。

    几点说明:
    timed只能同步同一VLAN内的机器,不能跨路由;
    时间同步结束后,若两台机器的时区不同,则它们的本地时间必定不同,差距与时区差相同;
    若要开机自动启动timed,可将timed的启动语句加到 /etc/rc.tcpip 中,但不建议这样做,建议只使用timed进行临时时间同步,同步完立即用stopsrc -s timed停止;
    IBM将timed看作是一种旧的时间守护程序,IBM推荐用 xntpd 代替它。

3、关于如何检查两台AIX服务器时间是否一致
    timedc命令可以做到,如:
aixserver3#/> timedc clockdiff aixserver1
time on aixserver1.iipc.hk.ibm.com is 37628680 ms. behind time on aixserver3
aixserver3#/>

    几点说明:
    timedc命令与timed没有必然的关系,不运行timed,timedc同样可以正常工作,且两台机器可以在不同的VLAN;
    同timed类似,timedc同样存在时区差的问题,即:如果时区不一致,即使timedc命令的结果报无差异,两机的本地时间也肯定不一致。

4、关于更改时区
    由以上可知,时区设置在时间同步的问题上比较重要。即使我们不需要精确的时间同步,也建议用chtz BEIST-8命令调整公司内所有AIX服务器的时区。

    几点说明:
    BEIST-8含义为:(BEIST-8)   Peoples Rep. China        (CUT +8)  ;
    更改时区后,机器必需重启动才能生效(用date命令更改本地时间不需重启动);
    为保证以后新装的机器都使用BEIST-8,新机器的安装脚本(见TEAMROOM)我已做了相应修改。

5、关于xntpd
    若我们需要精确的时间同步,可以参考:
http://www-900.ibm.com/cn/support/viewdoc/detail?DocId=1311001000144
http://www-900.ibm.com/cn/support/viewdoc/detail?DocId=2311993000001

6、关于AIX与WINDOWS服务器时间同步(若我们需要)
    WINDOWS虽然自带NTP协议,但只支持udp,不支持tcp,所以AIX无法与其同步。若要AIX服务器与公司的WINDOWS服务器时间同步,可以参考:
http://www.meinberg.de/english/sw/index.htm

    最后,关于调整aixserver1、aixserver2等服务器时间,我的建议是:
1、用chtz BEIST-8调整时区;
2、若机器允许马上重启,则重启后用date命令粗略调整,或用timed精确调整;
3、若机器不允许马上重启,则暂时用date命令粗略调整,但下次机器重启后,勿忘还要用date命令或timed重新调整;
4、若使用timed,要注意同步结束后stopsrc -s timed ;
5、调整系统时间,可能会影响到DB2里的数据(也可能不影响,目前不确定),故调整时间前最好知会DBA;
6、以一台机器为基准,用timedc或snmp等方法定期监控所有AIX服务器的时间差;
7、对于是否使用xntpd,和是否需要与WINDOWS服务器同步,听大家的意见

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值