当时间变为:2013083000时,其实输出的时间是:2013082923
如果能解决十分感谢
20 个解决方案
#1
date -d '-1 hours'
#2
date +%Y%m%d%H -d '-1 hours'
#3
![shell获取上一个小时的时间 shell获取上一个小时的时间](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0hNNkx5OW1iM0oxYlM1amMyUnVMbTVsZEM5UWIybHVkRVp2Y25WdEwzVnBMM05qY21sd2RITXZZM05rYmk5UWJIVm5hVzR2TURBekwyMXZibXRsZVM4eU55NW5hV1k9.jpg?w=700&webp=1)
#4
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
#5
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
#6
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
完全运行不了,不知道你在干什么?
#7
是在Linux服务器上操作吗?
是要写C程序,还是shell脚本,还是在终端上直接输命令?
date是Linux最常见的命令之一,你不是不知道吧?
是要写C程序,还是shell脚本,还是在终端上直接输命令?
date是Linux最常见的命令之一,你不是不知道吧?
#8
date +%Y%m%d%H -d '-1 hours'
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
#9
date +%Y%m%d%H -d '-1 hours'
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
不好意思,不知你们用的是什么linux?
一下是我的结果:
[u@H /ngboss/mddms/interface/boss]$date +%Y%m%d%H -d '-1 hours'
Invalid character in date/time specification.
Usage: date [-u] [+Field Descriptors]
#10
用的是redhat
不知你使用的是?
不知你使用的是?
#11
date +%Y%m%d%H -d '-1 hours'
ubuntu执行上面的命令得到正确的结果。
ubuntu执行上面的命令得到正确的结果。
#12
不错!~~ 学习了!~
#13
不好意思,不知你们用的是什么linux?
一下是我的结果:
[u@H /ngboss/mddms/interface/boss]$date +%Y%m%d%H -d '-1 hours'
Invalid character in date/time specification.
Usage: date [-u] [+Field Descriptors]
你的date命令不支持那种语法,可以使用epoch来计算。参考:
http://bbs.chinaunix.net/thread-1772999-1-1.html
#14
#15
date +%Y%m%d%H -d '-1 hours'
#16
上述方法都是在Linux上的,如果在AIX上,怎么办呀,我man了一下,没有发现'-1 hours',要想获得一小时前估计复杂多了。
#17
上述方法都是在Linux上的,如果在AIX上,怎么办呀,我man了一下,没有发现'-1 hours',要想获得一小时前估计复杂多了。
请看13楼的链接
#18
aix 没有date的函数,
计算某日前若干天的日期
#date=YYYYMMDD
#Usage:command date days
str=$1
days=$2
yy=`echo $str|cut -c 1-4`
mm=`echo $str|cut -c 5-6`
dd=`echo $str|cut -c 7-8`
sav_dd=$days
days=`expr $days - $dd`
while [ $days -ge 0 ]
do
mm=`expr $mm - 1`
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
aaa=`cal $mm $yy`
bbb=`echo $aaa|awk '{print $NF}'`
days=`expr $days - $bbb`
done
dd=`expr 0 - $days`
expr $dd : "^.$" > /dev/null && dd=0$dd
expr $mm : "^.$" > /dev/null && mm=0$mm
echo $yy$mm$dd
计算某日前若干天的日期
#date=YYYYMMDD
#Usage:command date days
str=$1
days=$2
yy=`echo $str|cut -c 1-4`
mm=`echo $str|cut -c 5-6`
dd=`echo $str|cut -c 7-8`
sav_dd=$days
days=`expr $days - $dd`
while [ $days -ge 0 ]
do
mm=`expr $mm - 1`
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
aaa=`cal $mm $yy`
bbb=`echo $aaa|awk '{print $NF}'`
days=`expr $days - $bbb`
done
dd=`expr 0 - $days`
expr $dd : "^.$" > /dev/null && dd=0$dd
expr $mm : "^.$" > /dev/null && mm=0$mm
echo $yy$mm$dd
#19
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
#20
多看man,多尝试。
#21
#1
date -d '-1 hours'
#2
date +%Y%m%d%H -d '-1 hours'
#3
date +%Y%m%d%H -d '-1 hours'
![shell获取上一个小时的时间 shell获取上一个小时的时间](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0hNNkx5OW1iM0oxYlM1amMyUnVMbTVsZEM5UWIybHVkRVp2Y25WdEwzVnBMM05qY21sd2RITXZZM05rYmk5UWJIVm5hVzR2TURBekwyMXZibXRsZVM4eU55NW5hV1k9.jpg?w=700&webp=1)
#4
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
#5
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
#6
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
完全运行不了,不知道你在干什么?
#7
是在Linux服务器上操作吗?
是要写C程序,还是shell脚本,还是在终端上直接输命令?
date是Linux最常见的命令之一,你不是不知道吧?
是要写C程序,还是shell脚本,还是在终端上直接输命令?
date是Linux最常见的命令之一,你不是不知道吧?
#8
date +%Y%m%d%H -d '-1 hours'
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
#9
date +%Y%m%d%H -d '-1 hours'
这个命令是可以的啊,具体如下:
[root@192-168-1-12 ~]# date
Fri Aug 30 15:13:18 CST 2013
现在的时间是2013083015
使用date +%Y%m%d%H -d '-1 hours'后,结果如下:
[root@192-168-1-12 ~]# date +%Y%m%d%H -d '-1 hours'
2013083014
不好意思,不知你们用的是什么linux?
一下是我的结果:
[u@H /ngboss/mddms/interface/boss]$date +%Y%m%d%H -d '-1 hours'
Invalid character in date/time specification.
Usage: date [-u] [+Field Descriptors]
#10
用的是redhat
不知你使用的是?
不知你使用的是?
#11
date +%Y%m%d%H -d '-1 hours'
ubuntu执行上面的命令得到正确的结果。
ubuntu执行上面的命令得到正确的结果。
#12
不错!~~ 学习了!~
#13
不好意思,不知你们用的是什么linux?
一下是我的结果:
[u@H /ngboss/mddms/interface/boss]$date +%Y%m%d%H -d '-1 hours'
Invalid character in date/time specification.
Usage: date [-u] [+Field Descriptors]
你的date命令不支持那种语法,可以使用epoch来计算。参考:
http://bbs.chinaunix.net/thread-1772999-1-1.html
#14
#15
date +%Y%m%d%H -d '-1 hours'
#16
上述方法都是在Linux上的,如果在AIX上,怎么办呀,我man了一下,没有发现'-1 hours',要想获得一小时前估计复杂多了。
#17
上述方法都是在Linux上的,如果在AIX上,怎么办呀,我man了一下,没有发现'-1 hours',要想获得一小时前估计复杂多了。
请看13楼的链接
#18
aix 没有date的函数,
计算某日前若干天的日期
#date=YYYYMMDD
#Usage:command date days
str=$1
days=$2
yy=`echo $str|cut -c 1-4`
mm=`echo $str|cut -c 5-6`
dd=`echo $str|cut -c 7-8`
sav_dd=$days
days=`expr $days - $dd`
while [ $days -ge 0 ]
do
mm=`expr $mm - 1`
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
aaa=`cal $mm $yy`
bbb=`echo $aaa|awk '{print $NF}'`
days=`expr $days - $bbb`
done
dd=`expr 0 - $days`
expr $dd : "^.$" > /dev/null && dd=0$dd
expr $mm : "^.$" > /dev/null && mm=0$mm
echo $yy$mm$dd
计算某日前若干天的日期
#date=YYYYMMDD
#Usage:command date days
str=$1
days=$2
yy=`echo $str|cut -c 1-4`
mm=`echo $str|cut -c 5-6`
dd=`echo $str|cut -c 7-8`
sav_dd=$days
days=`expr $days - $dd`
while [ $days -ge 0 ]
do
mm=`expr $mm - 1`
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
aaa=`cal $mm $yy`
bbb=`echo $aaa|awk '{print $NF}'`
days=`expr $days - $bbb`
done
dd=`expr 0 - $days`
expr $dd : "^.$" > /dev/null && dd=0$dd
expr $mm : "^.$" > /dev/null && mm=0$mm
echo $yy$mm$dd
#19
date -d '-1 hours'
你这个是什么呀,我怎么运行呀,我看也得不到正确结果呀,当时间变为:2013083000时,其实输出的时间是:2013082923
shell命令,你在命令行输入
date +%Y%m%d%H -d '-1 hours'
'-1 hours'是-d参数的参数,即获取上一个小时的时间;
+%Y%m%d%H是输入格式
#20
多看man,多尝试。