当前位置: 技术问答>linux和unix
【求助】AIX 计算前一小时时间【在线等】
来源: 互联网 发布时间:2016-11-02
本文导语: 目前后台环境是AIX 想求出前一个小时的时间,比如当前为 2010122812 ,求出结果应为2010122811 请问用shell如何实现 从网上找了个脚本在SUSE下可以实现 date -d '1970-01-01 UTC '$1' seconds' +"%Y-%m-%d %T" ($1为当前时间的...
目前后台环境是AIX
想求出前一个小时的时间,比如当前为 2010122812 ,求出结果应为2010122811
请问用shell如何实现
从网上找了个脚本在SUSE下可以实现
date -d '1970-01-01 UTC '$1' seconds' +"%Y-%m-%d %T" ($1为当前时间的时间戳减去3600)
在AIX下没有 -d这种用法
请问在AIX下该如何实现,多谢
想求出前一个小时的时间,比如当前为 2010122812 ,求出结果应为2010122811
请问用shell如何实现
从网上找了个脚本在SUSE下可以实现
date -d '1970-01-01 UTC '$1' seconds' +"%Y-%m-%d %T" ($1为当前时间的时间戳减去3600)
在AIX下没有 -d这种用法
请问在AIX下该如何实现,多谢
|
试试在一行输入
TZ=TZ-7 date
不行的话,调整7那个数字看看
TZ=TZ-7 date
不行的话,调整7那个数字看看
|
-d参数是GNU特有的,如果不限于shell解决的话,写个简单的C也不难
#include
#include
int main(void)
{
time_t now;
struct tm ts;
char buf[80];
// Get current time
time(&now);
now -= 3600;
ts = *localtime(&now);
strftime(buf, sizeof(buf), "%Y%m%d%H", &ts);
printf("%sn", buf);
return 0;
}
|
last=`TZ=$TZ+12 date +%Y/%m/%d-%H:%M:%S`
echo $last
echo $last