lunes, 9 de julio de 2012

¿Cómo usar getopts?

Presentamos un pequeño script utilizando el comando getopts. Con este comando podemos procesar la entrada que se le pasa a un script. Para usarlo vemos que sólo tenemos que ponerla en un while y diferenciar entre las opciones que necesitan argumentaos y las que no. Esto se indica con dos puntos a la derecha de la opción. Como podemos ver, para cada opción recogemos su variable y la procesamos al terminar de recolectarlas.
#!/bin/bash
 
while getopts ":a:f:v:" opt; do
  case $opt in
    a)
     VARIABLE=$OPTARG
      ;;
    f)
     FICHERO=$OPTARG
      ;;
    v)
     VALUE=$OPTARG
      ;;
    \?)
      echo "Opcion invalida: -$OPTARG" >&2
      exit 1
      ;;
    :)
      echo "La opcion -$OPTARG necesita un argumento." >&2
      exit 1
      ;;
  esac
done

cat $FICHERO | sed s/$VARIABLE=.*/$VARIABLE=$VALUE/ > $FICHERO
Después de recoger los parámetros ejecutamos la útlima línea. Lo único que hace es buscar la variable en el fichero indicado y sustituirla por el valor introducido.

No hay comentarios:

Publicar un comentario