Ejecución del script con argumentos
Ahora que hemos creado nuestro script, vamos a ejecutarlo con diferentes argumentos para ver cómo se comportan las variables especiales.
- Ejecuta el script sin ningún argumento:
./special_vars.sh
El ./ antes del nombre del script le indica a la shell que busque el script en el directorio actual.
Deberías ver una salida similar a esta:
Script Name: ./special_vars.sh
First Argument:
Second Argument:
All Arguments:
Number of Arguments: 0
Process ID: 1234
Observa que el primer y segundo argumento están vacíos, y el número de argumentos es 0 ya que no proporcionamos ninguno.
- Ahora, ejecuta el script con algunos argumentos:
./special_vars.sh hello world
La salida debería verse así:
Script Name: ./special_vars.sh
First Argument: hello
Second Argument: world
All Arguments: hello world
Number of Arguments: 2
Process ID: 1235
Esto es lo que ha cambiado:
$1 ahora contiene "hello"
$2 ahora contiene "world"
$@ muestra todos los argumentos: "hello world"
$# muestra 2, porque proporcionamos dos argumentos
El ID de proceso ($$) puede ser diferente cada vez que ejecutes el script, ya que es asignado por el sistema operativo.