Uso de argumento opcional y valor predeterminado en la función Bash

Uso de argumento opcional y valor predeterminado en la función Bash
Una función es una parte esencial de cualquier lenguaje de programación que contenga un bloque de código. El mismo código se puede ejecutar varias veces llamando a una función, y el requisito de escribir el mismo código repetidamente se puede evitar utilizando la función. Una función se puede definir sin argumento y con argumento. El argumento de la función puede ser obligatorio y opcional. El valor predeterminado se puede establecer para el argumento de la función bash. Las formas de declarar el argumento opcional y el uso de valores predeterminados en la función bash se han mostrado en este tutorial.

Ejemplo-1: calcule la suma usando argumentos opcionales

La forma de definir argumentos opcionales con valores predeterminados se muestra en este ejemplo. Cree un archivo bash con el siguiente script para calcular la suma de dos números. En el script, la función llamada sum () contiene dos argumentos opcionales con valores predeterminados. Si no se da ningún argumento al llamar a la función, se calculará la suma de los valores predeterminados. Si se da un argumento al llamar a la función, entonces se calculará la suma del valor del argumento y el segundo valor predeterminado. Si se dan dos argumentos al momento de llamar a la función, entonces se calculará la suma de los valores del argumento. A continuación, la función ha llamado sin ningún argumento, con un argumento, y con dos argumentos.

#!/bin/bash
#Función Declare con argumento obligatorio y opcional
functionsum ()

#Establece los valores
num1 = $ 1: -10
num2 = $ 2: -20
#Return verdadero si no se da ningún argumento
if [$# -lt1]; entonces
echo "Los valores de argumento opcional son: $ num1, $ num2."
#Return verdadero si se da un argumento
Elif [$# -lt2]; entonces
#Add nueva línea
eco
echo "El valor de argumento opcional es: $ num2."
demás
#Add nueva línea
eco
Echo "No hay un argumento opcional."
num1 = $ 1
num2 = $ 2
FI
#Calcule la suma de dos números
suma = $ ((num1+num2))
echo "La suma de $ num1 y $ num2 es $ suma"

#Función de atención sin ningún argumento
suma
#Función de llamas con un argumento
suma 40
#Call la función con dos argumentos
Suma 70 30

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior. Cuando se llamó a la función sin ningún argumento, se imprimió la suma de dos valores predeterminados que 30 (10+20). Cuando se llamó a la función con un argumento, se imprime la suma del valor del argumento (40) y el segundo valor predeterminado (20) que es 60. Cuando se llamó a la función con dos argumentos, la suma de dos valores de argumentos ha imprimido 100 (70+30).

Ejemplo-2: autenticar al usuario usando

valores predeterminados
Cree un archivo bash con el siguiente script para autenticar al usuario con el nombre de usuario y la contraseña predeterminados cuando se llama a la función sin ningún argumento. La función nombrada autenticate () contiene dos argumentos opcionales con nombre de usuario y contraseña predeterminados. Cuando se llama a esta función sin ningún argumento, los valores predeterminados se utilizarán para autenticar al usuario, y se imprimirá el mensaje de éxito del inicio de sesión de invitado. Cuando se llama a esta función con un nombre de usuario y contraseña válidos, se imprimirá el mensaje de éxito de la inicio de sesión del administrador. Cuando se llama a esta función con un nombre de usuario y contraseña inválidos, el mensaje de error se imprimirá.

#!/bin/bash
#Función Declare para la autenticación
functionAuthenticate ()

#Establece los valores
nombre de usuario = $ 1: -guest
contraseña = $ 2: -12345
#Return verdadero si no se da ningún argumento
if [[$ username == 'admin' && $ contraseña == 'secret']]; entonces
Echo "Has iniciado sesión como administrador."
#Return verdadero si se da un argumento
Elif [[$ username == 'invitado' && $ contraseña == '12345']]; entonces
Echo "Has iniciado sesión como invitado."
demás
echo "nombre de usuario y contraseña inválidos."
FI

#Función de atención sin ningún argumento
Autenticar
#Función de atención con nombre de usuario y contraseña válidos
Autenticar secreto de administrador
#Función de atención con nombre de usuario y contraseña inválidos
Autenticar fahmida 1234

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-3: Calcule el bono en función del valor predeterminado

Cree un archivo bash con el siguiente script para calcular el bono en función del valor predeterminado si no se da ningún valor de argumento para la función. Se tomarán tres valores de entrada del usuario después de ejecutar el script. Estos son salario básico, alquiler de la casa y asignación médica. La función nombrada calculación_salar () calculará la cantidad de bonificación en función del valor del argumento de la función o el valor predeterminado. La cantidad salarial total se contará agregando los valores de básico, alquilar, médico, y bonia. El calculación_salar () La función ha llamado sin ningún argumento o con un argumento.

#!/bin/bash
#Take básico, alquiler de la casa y asignación médica de un empleado
Echo "Ingrese el salario básico:"
Leer básico
Echo "Ingrese al alquiler de la casa":
alquiler de lectura
Echo "Ingrese la asignación médica:"
leer médico
#Función Declare para calcular el salario con bonificación
FunctionCalCulate_Salary ()

#Establece el valor
Bonus = $ 1: -5
#Calculación de bonificación
Bonusamount = $ ((BASIC*Bonus/100))
#Calculación de salario total
Total = $ ((BASIC+RENT+MEDICAL+BONUSMOUNT))
#PRESTULAR SALARIO TOTAL CON LA MITOR DE BONIFICACIÓN
Echo "El salario total con $ Bonus % Bonus es $ Total"

#Función de atención sin el porcentaje de bonificación
calcular_salar
#Función de atención con el porcentaje de bonificación
calculación_salary 10

Producción:

La siguiente salida aparecerá después de ejecutar el script. Cuando se ha llamado a la función sin ningún argumento, el valor predeterminado 5 se ha utilizado para calcular la cantidad de bonificación en función de la cantidad básica. Cuando la función ha llamado con el valor del argumento 10, la cantidad de bonificación se ha calculado en función de este valor. A continuación, se ha imprimido el salario total basado en un bono del 5% y un bono del 10%.

Conclusión:

El uso de argumentos opcionales con valores predeterminados en la función se ha descrito en este tutorial utilizando tres ejemplos diferentes. El valor predeterminado puede ser numérico o cadena. El propósito de usar un argumento opcional con los valores predeterminados en la función se borrará para el usuario bash después de leer este tutorial.