求解:AIX 获取 前N天的系统时间
小弟,说来惭愧。 搞了快一天了,都没有弄出来。。还请给位大侠们。帮帮小弟啊。。
情况是这样的。 我这里有一个脚本(对 aix服务器的部分数据进行采集,之前是采集前五分钟的<--信息可以采集的)
现在需求需要变为 N天前(假如20天-先不考虑跨月份)采集到数据。。
相关代码如下:
======================================================
#!/bin/sh
today=`date +"%Y-%m-%d %H:%M:%S"`
FNAME=$IP.log
echo $FNAME
rm $FNAME
echo cmdbegin:collecttime >> $FNAME
echo "$today" >> $FNAME
echo cmdbegin:uptime >> $FNAME
uptime >> $FNAME
echo cmdbegin:errpt >> $FNAME
Change_time=${1:-5} #默认5分钟之前
V_Day=`date +%m%d`
V_Year=`date +%y`
V_Hour=`date +%H`
V_Min=`date +%M`
V_Time=`expr $V_Hour * 60 + $V_Min `
if [ $V_Time -lt $Change_time ];
then
V_Time=` expr 24 * 60 + $V_Time `
OS=`uname`
if [ $OS = AIX ];
then
V_TZ=`echo $TZ|sed 's/.*(..)/1/'`
V_TZ=`expr $V_TZ + 24`
eval V_TZ=`echo $TZ|sed 's/..$/+$V_TZ/'`
TZ=$V_TZ
export TZ
elif [ $OS = SunOS ];
then
TZ="GMT+16"
export TZ
fi
V_Day=`date +%m%d`
V_Year=`date +%y`
fi
V_Time=`expr $V_Time - $Change_time `
N_Hour=`expr $V_Time / 60 `
N_Min=`expr $V_Time % 60 `
echo "the $Change_time minute ago is $V_Day$N_Hour$N_Min$V_Year"
tt=$V_Day$N_Hour$N_Min$V_Year
errpt -a -s $tt >> $FNAME
echo cmdbegin:volume >> $FNAME
lspv >> $FNAME
echo cmdbegin:route >> $FNAME
netstat -rn
echo cmdbegin:end >> $FNAME
ftp -n <bye
!
rm $FNAME
=============================================================================
匹配的时间格式为 :0928****2012
小弟在线等。。。 不甚感激。