How to compare floating variables , integer value expected?

I am running some commands and I am trying to get an output into a variable. I am having problem when I try to put that value in while loop, it says integer value expected. What's the best way to accomplish this

  remaining=$(symclone -sid XXX -f Clone_test query | grep MB | awk '{print $2}')
   y=1
   while [ "$remaining" -gt  "$y" ]
    do
     echo "$remaining MB's to be copied....." >> mylog
     sleep 10
   remaining=$(symclone -sid XXX -f Clone_test query | grep MB | awk '{print $2}')
    done

Since you're using awk anyway, do everything in awk, because it supports floating point variables. Use awk's return status to tell the shell loop whether it finished.

Incidentally, since you're using awk, you don't need grep either, since awk can do the function of both.

while symclone -sid XXX -f Clone_test query | awk -v R="$y" '/MB/ { printf("%s/%s remaining\n", $2, R); exit($2 > $y)}'
do
        sleep 10
done