
Pero en el útlimo apartado de esa sección del libro habla de las funciones, y hay cosas que no me quedan claras. Por ejemplo:
Código:
¿Es que puede tomar la definición de la función el $1 (primer argumento) directamente? Es que en PHP había que decirle que esa variable era global... No lo entiendo, porque si le añado debajo de la definición de la función una línea para que la ejecute:function factorial () { N=$1 A=1 while test $N -gt 0 ; do A=`expr $A '*' $N` N=`expr $N - 1` done echo $A }
Código:
Y guardo todo en un shell script (factorial.sh), y ejecuto:factorial
Código:
Me devuelve:$ ./factorial.sh 4
Código:
Creo que no puede tomar el valor del primer argumento dentro de la función. ¿Puede alguien explicarme cómo funcionan las variables globales en el shell scripting?./factorial.sh: test: -gt: unary operator expected 1
Gracias por vuestro tiempo.
Un saludo,