我的版本号有三列和两位数(xx:xx:xx
)。谁能告诉我如何使用shell脚本增加它。
Min Value
00:00:00
Max Value
99:99:99
Sample IO
10:23:56 -> 10:23:57
62:54:99 -> 62:55:00
87:99:99 -> 88:00:00
答案 0 :(得分:3)
作为使用awk的一个班轮,假设VERSION是一个带有版本的变量:
What about AFNetworking ?
答案 1 :(得分:1)
这很容易,只需要一些小数学技巧和alter table QUOTE_HOUSE
add TESTCOL Varchar2(20)
命令,这里是如何:
bc
如果需要溢出检查,可以使用#!/bin/bash
# read VERSION from $1 into VER
IFS=':' read -r -a VER <<< "$1"
# increment by 1
INCR=$(echo "ibase=10; ${VER[0]}*100*100+${VER[1]}*100+${VER[2]}+1"|bc)
# prepend zeros
INCR=$(printf "%06d" ${INCR})
# output the result
echo ${INCR:0:2}:${INCR:2:2}:${INCR:4:2}
语句之类的技巧来完成。
答案 2 :(得分:0)
这基本上有效,但可能会也可能不会进行字符串填充:
ELASTICSEARCH_URL
答案 3 :(得分:0)
尝试这一个班轮:
File "PATH_TO_DJANGO\app1\management\excel.py", line 3, in <module>
from app1.functions import method1, method1, method3
ImportError: cannot import name method1
测试:
awk '{gsub(/:/,"");$0++;gsub(/../,"&:");sub(/:$/,"")}7'
请注意,角落案例未经过测试。
答案 4 :(得分:0)
不需要任何花哨的东西(除了Bash):
$ ver=87:99:99
$ echo "$ver"
87:99:99
$ printf -v ver '%06d' $((10#${ver//:}+1))
$ ver=${ver%????}:${ver: -4:2}:${ver: -2:2}
$ echo "$ver"
88:00:00
我们只使用参数展开${ver//:}
来删除冒号:然后我们将使用通常的十进制数字,增加它并使用printf
重新格式化它;然后使用一些更多的参数扩展来对数字进行分组。
这假设ver
已被彻底检查(使用正则表达式或glob)。