-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Content-ID:
El Fri, 26 Mar 2010 11:35:32 +0100, koxkorrita escribió:
esto para algunos será muy sencillo pero nunc alo he hecho. enun script shell (/bin/sh) como puedo hacer un for? es decir (for(int i = 0;i<100;i++){})
*** #!/bin/sh for((i=0;i<100;i++)) do echo $i done ***
¡Ostrás! ¿Tan facil? ¿Desde cuando se puede hacer así, eso es desde siempre? No me lo sabía, yo usaba esto: for X in `seq 1 100`; do echo $X done que es estructuralmente parecida a esta: for FILES in filename1 filename2 filename3 do gzip $FILES done } La tuya se ejecuta más rápido, me la quedo ;-) Por cierto, no uses "#!/bin/sh", usa "#!/bin/bash", a no ser que sepas que es una construcción universal. Hay algunas distros que han pensado o han cambiado la shell por defecto, a otra más liviana que el bash, precisamente para acelerar el arranque (es la discusión previa a lo del upstart ese), y se encontraron con el problema de que algunos scripts "oficiales" no funcionaban. Tenían que, o bien especificar bash, o cambiar el script para que fuera con la nueva shell (y son scripts que a veces vienen de "upstream", lo que añade una cosa más a mantener en cada distro). Así que es mejor especificarla. Si alguien luego quiere usar el script con otra shell, que lo cambie. Es que me sospecho que esa construcción "for" es específica del bash, y es posible que hasta sea relativamente reciente. - -- Saludos Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkutJx4ACgkQtTMYHG2NR9VPfQCgjSCQ/4esWVU15pMCWiIr5Q7r IKAAn2C52NhOeYNfpqaHeLpabe6YZyz+ =XMAL -----END PGP SIGNATURE-----