Here is a pure Bash versionsimple function that works for version strings that have up to three components in them. It can be easily extended. It also supports a wildcardimplements *=, <, <=, >, >=, and != conditions.
#!/bin/bash
vercmp() {
version1=$1
version2=$2
condition=$3
[[ $version1 = '*' || $version2 = '*' ]] && return 0
IFS=. v1_array=($version1) v2_array=($version2)
v1=$((v1_array[0] * 100 + v1_array[1] * 10 + v1_array[2]))
v2=$((v2_array[0] * 100 + v2_array[1] * 10 + v2_array[2]))
diff=$((v2 - v1))
[[ $condition = '=' ]] && ((diff == 0)) && return 0
[[ $condition = '!=' ]] && ((diff != 0)) && return 0
[[ $condition = '<' ]] && ((diff > 0)) && return 0
[[ $condition = '<=' ]] && ((diff >= 0)) && return 0
[[ $condition = '>' ]] && ((diff < 0)) && return 0
[[ $condition = '>=' ]] && ((diff <= 0)) && return 0
return 1
}