En las secuencias de comandos bash, existen parámetros especiales que proporcionan formas adicionales de manejar los datos de entrada. Estos incluyen $*, $@ y $#.
Los parámetros $* y $@ representan todos los argumentos que se pasaron al script. Si bien pueden parecer idénticos, su comportamiento difiere cuando intentas repetirlos en un script. Ilustremos esto con un ejemplo:
1 2 3 4 5 6 7 8 9 10 11 12 |
#!/bin/bash echo "iterando con \$*" for arg in "$*" do echo $arg done echo "" echo "Iterando con \$@" for arg in "$@" do echo $arg done |
Al ejecutar es scripts, pasándole varios parámetros :
1 2 3 4 5 6 7 8 9 10 |
$ bash prueba.sh uno dos tres cuatro iterando con $* uno dos tres cuatro Iterando con $@ uno dos tres cuatro |