Ejemplo de Linux Getopts

Ejemplo de Linux Getopts
"Getopts" es un comando muy útil en Linux que se incorpora principalmente dentro de los scripts bash para tomar banderas y argumentos como entradas del usuario. Para elaborar aún más sobre el uso de este comando en Linux Mint 20, compartiremos con usted dos ejemplos diferentes de su uso en este artículo.

Ejemplos de "getopts" en Linux Mint 20:

Para una comprensión más fácil y más fácil del comando "getopts" en Linux Mint 20, hemos diseñado para usted dos escenarios de ejemplo. Antes de dirigirse a estos escenarios, puede consultar el manual de ayuda del comando "getopts" en el terminal Linux Mint 20 para que pueda obtener la idea básica sobre la sintaxis de este comando. Puede ver el manual de ayuda de este comando ejecutando el comando "ayuda":

$ getopts --help

El manual de ayuda del comando "getopts" contendrá una breve descripción del uso de este comando junto con su sintaxis como se muestra en la imagen a continuación:

Ahora, cuando hemos pasado por el manual de ayuda del comando "getopts", podemos continuar con nuestros escenarios de ejemplo de la siguiente manera:

Caso n. ° 1: Pasando los indicadores a un script bash para su ejecución en Linux Mint 20:

En este ejemplo, crearemos un script bash que tomará una bandera como entrada del usuario junto con el comando de ejecución de ese script bash. Dependiendo del valor del indicador proporcionado, se mostrará la salida respectiva. La descripción detallada de los pasos involucrados en este escenario es la siguiente:

Paso # 1: Escribir un guión de Bash:

Primero, escribiremos un script bash en nuestro directorio de inicio. Hemos nombrado este archivo como getopts.mierda. El contenido de este script bash se muestra en la imagen a continuación. En el script bash que se muestra a continuación, tenemos un bucle "while" que se ejecuta en el comando "getopts". Aquí, este comando "getopts" se usa para tomar una bandera como entrada del usuario. El valor de esta bandera puede ser "r", "y" o "g" que representa los colores "rojos", "amarillos" y "verdes" respectivamente. La variable "opción" se utilizará para almacenar el valor del indicador proporcionado por el usuario. Luego hemos utilizado una declaración de "caso" sobre el valor del indicador proporcionado que mostrará un mensaje personalizado dependiendo del valor del indicador "Opción". Finalmente, hemos cerrado el bloque "Caso" con la declaración "ESAC" y el bloque "Do" con la declaración "Hecho".

Paso # 2: Probar el script bash:

Después de crear y guardar nuestro script bash, ahora es el momento de ejecutarlo. Probaremos todos los casos uno por uno. Primero, ejecutaremos el script bash con el indicador "-r" para ver si produce la salida correcta o no de la siguiente manera:

$ bash getopts.sh -r

La salida personalizada de nuestro script bash con el indicador "-r" se muestra en la imagen a continuación:

Ahora, ejecutaremos el script bash con el indicador "-y" para ver si produce la salida correcta o no de la siguiente manera:

$ bash getopts.tímido

La salida personalizada de nuestro script bash con el indicador "-y" se muestra en la imagen a continuación:

Ahora, ejecutaremos el script bash con el indicador "-g" para ver si produce la salida correcta o no de la siguiente manera:

$ bash getopts.SH -G

La salida personalizada de nuestro script bash con el indicador "-g" se muestra en la imagen a continuación:

Finalmente, ejecutaremos nuestro script bash con cualquier bandera al azar, yo.mi. Una bandera que no es válida o una bandera que no se menciona en nuestro script bash dice "-a" de la siguiente manera:

$ bash getopts.SH -A

Esta vez, se ha ejecutado el caso predeterminado de nuestro script bash que ha mostrado un mensaje de error desde que hemos usado un indicador no válido.

Caso n. ° 2: Pasando banderas junto con argumentos a un script bash para su ejecución en Linux Mint 20:

En este ejemplo, crearemos un script bash que tomará una bandera y un argumento como entrada del usuario junto con el comando de ejecución de ese script bash. Dependiendo del valor del indicador y el argumento proporcionados, se producirá la salida respectiva. La descripción detallada de los pasos involucrados en este escenario es la siguiente:

Paso # 1: Escribir un guión de Bash:

El script bash utilizado para este caso se muestra en la imagen a continuación y es muy similar al que creamos para nuestro caso # 1. La única diferencia es que esta vez, no estamos permitiendo múltiples banderas. El usuario solo puede ingresar el indicador "-r". Sin embargo, el colon ":" después de la bandera "r" en el script bash indica que también se supone que el usuario proporciona un argumento junto con la bandera. Este argumento se almacenará en la variable predeterminada "OPTARG". Para mostrar el valor del argumento proporcionado con el comando "Echo", hemos utilizado un símbolo "$" antes de la variable "Optarg".

Paso # 2: Probar el script bash:

Después de guardar este script bash, ahora es el momento de probarlo. Una vez más, probaremos todos los casos uno por uno. Primero, ejecutaremos el script bash con el indicador "-r" y un argumento de muestra "negro" para ver si produce la salida correcta o no de la siguiente manera:

$ bash getopts.sh -r negro

La salida personalizada de nuestro script bash con el indicador "-r" y el argumento "negro" se muestra en la imagen a continuación:

Ahora, probaremos este script con una bandera inválida y un argumento válido de la siguiente manera:

$ bash getopts.sh -A negro

Esta vez, se ha ejecutado el caso predeterminado de nuestro script bash que ha mostrado un mensaje de error desde que hemos usado un indicador no válido.

Ahora, ejecutaremos este script bash al omitir la bandera y simplemente pasar un argumento válido de la siguiente manera:

$ bash getopts.SH NEGRO

Esta vez, no se producirá ningún resultado en el terminal o en otras palabras, nuestro script bash no se ejecutará ya que hemos omitido una bandera obligatoria.

Finalmente, ejecutaremos este script bash al omitir el argumento y simplemente pasar la bandera válida de la siguiente manera:

$ bash getopts.sh -r

Una vez más, esta vez, se ha ejecutado el caso predeterminado de nuestro script bash que ha mostrado un mensaje de error desde que nos saltó el argumento obligatorio.

Conclusión:

Estos dos ejemplos son una muy buena representación del uso del comando "getopts" en un script bash en Linux Mint 20. Incluso puede crear escenarios más complejos en Bash y combinarlos con el comando "getopts" para tomar más de un argumento y los indicadores del usuario como entradas.