Comprobar el número de argumentos en Linux Bash

Yahya Irmak 30 enero 2023
  1. Obtener argumentos de línea de comandos en Bash
  2. Comprobar el número de argumentos en Bash
Comprobar el número de argumentos en Linux Bash

El script Bash puede necesitar una cierta cantidad de argumentos de línea de comandos para ejecutarse. A lo largo de este artículo, explicaremos cómo usar los argumentos de la línea de comandos en Linux Bash. También aclararemos cómo comprobar el número de argumentos.

Obtener argumentos de línea de comandos en Bash

Al ejecutar un script bash, cualquier valor después del nombre del programa se proporciona como argumento para el programa. Tenemos un ejemplo de cómo podemos obtener estos argumentos.

El contenido del archivo example.sh se encuentra a continuación.

echo "Program name: $0"
echo "First argument: $1"
echo "Second argument: $2"

Ejecutemos el programa y veamos el resultado.

./example.sh hello world

Obtener argumentos de línea de comandos

Como puede ver, el nombre del programa es el argumento cero. Cada valor después del nombre del programa se toma secuencialmente.

Obtener valores de todos los argumentos en Bash

Podemos usar el comando $* o $@ para ver todos los valores dados como argumentos.

echo "Args with *: $*"
echo "Args with @: $@"

Este código imprime todos los valores dados como argumentos a la pantalla con ambos comandos.

Obtener valores de todos los argumentos

Comprobar el número de argumentos en Bash

Podemos usar el comando $# para encontrar la cantidad de valores dados como argumentos para el comando bash. Por ejemplo, podemos usar este comando para evitar que el programa se ejecute sin la cantidad requerida de argumentos.

if [ "$#" != "2" ]; then
    echo "You must provide two args."
else
    echo "Welcome!"
fi

Este programa no continuará ejecutándose a menos que se ejecute con exactamente dos argumentos.

Comprobar número de argumentos

Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

Artículo relacionado - Bash Argument