|
berni69
|
 |
« : 21-Diciembre 22:05:54 (Lunes) » |
|
n esta segunda entrega de la miniguía de bash vamos a ver cómo pasar argumentos (o parámetros a un script bash).
En la primera entrega vimos cómo crear un fichero y hacerlo ejecutable. Siguiendo esas instrucciones puedes crear un fichero llamado parametros.sh y copiar lo siguiente:
#!/bin/bash echo $1
Si invocamos el script con el siguiente comando:
parametros.sh primero
el resultado sería:
primero
Como vemos, el argumento “primero” ha quedado almacenado en la variable $1 (sí, con bash se pueden usar variables ¿no es maravilloso?).
El siguiente comando:
parametros.sh primero segundo
Nos mostrará lo mismo que antes:
primero
Los argumentos en bash se separan por un espacio, de tal forma “segundo” sería el segundo argumento. Para recogerlo y mostrarlo tendríamos que modificar nuestro script:
#!/bin/bash echo $1 echo $2
Para recoger el tercer argumento usaríamos $3 y así sucesivamente.
Existe una variable, $#, que se crea automáticamente que contiene el número de argumentos que se han pasado al script:
#!/bin/bash echo "Total argumentos: $#"
al llamarlo con:
parametros.sh primero segundo
mostrará:
Total argumentos: 2
También se crea automáticamente otra variable, $@, que es un array que contiene todos los argumentos. Si hacemos:
#!/bin/bash echo $@
nos mostará todos los argumentos:
parametros.sh primero segundo
resultado:
primero segundo
Ya veremos en otra entrega cómo trabajar con este y otros arrays. ¿Qué utilidad tiene esto de los argumentos?
Los argumentos dan una gran flexibilidad a nuestros scripts ya que mediante ellos podemos indicar con qué fichero o directorio queremos trabajar o especificar un usuario por ejemplo.
|