This is just a good way to evaluate arguments passed to a script that I've been using.
Code
#!/bin/bash
while [ $# != 0 ]
do
case $1 in
-a)
var1=$2
shift 2
;;
-b)
var2=$2
shift 2
;;
-c)
var3=$2
shift 2
;;
*)
echo "invalid argument $1"
exit 1
esac
done