Archivo

Entradas Etiquetadas ‘script’

Bash: captura de parámetros en un script

Lunes, 1 de Marzo de 2010

Para hacer nuestros scripts más potentes, a veces nos puede interesar permitir que nuestros parámetros se pasen precedidos de la opción a la que corresponden. Con esto podríamos hacer cosas como:

# miscript -a opciona -b opcionb -d opciond
# miscript -b opcionb -c opcionc

Para hacer esto podemos añadir el siguiente código a nuestro script:

while test -n "$1"; do
    case "$1" in
        -a)
            opciona=$2
            shift
            ;;
        -b)
            opcionb=$2
            shift
            ;;
        -c)
            opcionc=$2
            shift
            ;;
        -d)
            opciond=$2
            shift
            ;;
        *)
            echo "Unknown argument: $1"
            print_usage
            exit 0
            ;;
    esac
    shift
done

# Grab the command line arguments

#logfile=$1
#bookmark=$2
#critical=$3
#warning=$4
#exclude=$5
exitstatus=$STATE_WARNING #default
while test -n “$1”; do
case “$1” in
-l)
logfile=$2
shift
;;
-b)
bookmark=$2
shift
;;
-c)
critical=$2
shift
;;
-w)
warning=$2
shift
;;
-e)
exclude=$2
shift
;;
*)
echo “Unknown argument: $1”
print_usage
exit $STATE_UNKNOWN
;;
esac
shift
done

Linux , ,