#!/usr/bin/env bash
set -x

space_re='^([[:digit:]]+) ?([kmg]b)$'

declare -A multipliers=(
  [kb]=$(( 1024 ))
  [mb]=$(( 1024 * 1024 ))
  [gb]=$(( 1024 * 1024 * 1024 ))
)

to_bytes() {
  result=$1
  if [[ $1 =~ $space_re ]] && { units=${BASH_REMATCH[2]}; [[ $units && ${multipliers[$units]} ]]; }; then
    result=$(( ${BASH_REMATCH[1]} * ${multipliers[${BASH_REMATCH[2]}]} ))
  elif (( $1 )); then
    result=$(( $1 ))
  else
    echo "ERROR: $1 could not be parsed as a number" >&2
    return 1
  fi
  echo "$result"
}

Var1='25 mb'
Var2='1 gb'
if (( $(to_bytes "$Var1") > $(to_bytes "$Var2") )); then
  echo "Var1 is larger than Var2"
else
  echo "Var1 is not larger than Var2"
fi
