分页: 1 / 1
请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 14:15
由 mushroom09
我写一脚本要求输入的第一个参数格式为 hh:mm:ss
请问在脚本中如何判断参数格式是否正确呢?
我是初学的,grep用的还不熟,中间的':'不知如何处理
谢谢!
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 14:17
由 eexpress
为什么那输入这个作参数啊。
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 14:22
由 mushroom09
感觉在使用的时候这个格式比较人性化好理解啊,而且脚本需要把时间转换成秒数
有什么方法吗?
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 14:27
由 eexpress
就知道你还有其他步骤。最好找一个支持strftime函数的语言来写。
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 14:28
由 yingfei
给你一个不是灰常灰常严格的判断。 不过一般的应用 应该没什么问题:
代码: 全选
echo $1 | grep "^\([0-2][0-3]\):\([0-5][0-9]\):\([0-5][0-9]\)$"
[ "$?" = "0" ] && echo OK || echo NOT OK
[/size]
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 15:31
由 t3swing
用date判断吧 ,同时也可以输出1970到现在的秒数(%s参数)
例子:
date -d 36:12:12 +%s;echo $?
date: 无效的日期 “36:12:12”
1
str="15:30:59";date -d $str +%s;echo $?
1256801459
0
根据返回值判断输入时间是否正确,date很强大,一般常用处理够了
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-10-29 19:40
由 steven zhao
用 cut -f:分割三个,用awk也能做到的
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-11-18 11:38
由 zzxop
yingfei 写了:给你一个不是灰常灰常严格的判断。 不过一般的应用 应该没什么问题:
代码: 全选
echo $1 | grep "^\([0-2][0-3]\):\([0-5][0-9]\):\([0-5][0-9]\)$"
[ "$?" = "0" ] && echo OK || echo NOT OK
[/size]
支持正则表达式
Re: 请问如何判断时间格式是否正确呢?
发表于 : 2009-11-18 14:58
由 eexpress
错得很多的。还支持。
