Script para limpieza de compilaciones; uso de case y for y manejo de argumentos

Hola,

Realicé un script sencillito (mi primer script algo formal) que realizaba limpieza de compilaciones.

Su funcionamiento es el siguiente:

-Busca carpetas dentro del directorio actual con el comando "find"
-Si las carpetas contienen dentro de ellas el archivo "debian/rules", se procede a limpiar las compilaciones.

#!/bin/sh

#Script para limpiar archivos resultantes en la compilación de paquetes debian.
#
#Su funcionamiento es el siguiente:
# -Busca mediante "find" las carpetas presentes en el directorio en el que
# se ejecuta el script, con una profundidad determinada por el primer
# argumento.
# -Si las carpetas encontradas tienen dentro de sí el archivo
# "debian/rules", se ejecuta la función "limpiar" , que elimina los
# archivos resultantes de la compilación.

ORIGEN=$PWD

limpiar()
{
                echo "\n LIMPIANDO $FILE \n"
cd $FILE
fakeroot make -f debian/rules clean
cd $ORIGEN
}

case "$1" in
  --help|-h)
echo "Uso: $0 [-h | --help] [-maxdepth MAXDEPTH]"
exit 0
;;
  -maxdepth)
;;
  $NULL)
;;
  *)
echo "Uso: $0 [-h | --help] [-maxdepth MAXDEPTH]"
exit 1
;;

esac

for FILE in $( find . $1 $2 -type d); do

        if [ -e $FILE/debian/rules ]; then
        limpiar
        fi

done

exit 0

Las opciones para los argumentos son "-h" o "--help", para mostrar el modo de uso, y "-maxdepth" para determinar a la "profundidad" a la que busca "find".

He pensado que sería conveniente implementar el que se pudiera determinar la ruta donde efectuar su acción el script mediante un argumento, para que no haya la necesidad de ejecutarlo estando ya en el directorio a partir del cual se realiza la limpieza.

¿Cómo podría implementar que, independientemente del orden de los argumentos ($1, $2, $3 ...) hubiera una opción (por ejemplo, "-C") que indicara la ruta en la que debe actuar el script?

Muchas gracias por adelantado,

Saludos