tmp.sh 412 B

12345678910111213141516
  1. increment_version ()
  2. {
  3. declare -a part=( ${1//\./ } )
  4. declare new
  5. declare -i carry=1
  6. for (( CNTR=${#part[@]}-1; CNTR>=0; CNTR-=1 )); do
  7. len=${#part[CNTR]}
  8. new=$((part[CNTR]+carry))
  9. [ ${#new} -gt $len ] && carry=1 || carry=0
  10. [ $CNTR -gt 0 ] && part[CNTR]=${new: -len} || part[CNTR]=${new}
  11. done
  12. new="${part[*]}"
  13. echo -e "${new// /.}"
  14. }
  15. version='1.2.3.9'
  16. increment_version $version