Hola Maximiliano Milicich!
El 25/05/2009 a las 05:45 escribiste:
> Hola, a ver quien me puede orientar con esto...
> Ando practicando shellscripting en Linux (en BASH) y tengo el siguiente
> desafio:
> Tengo una variable que aloja una lista de strings separados por newlines.
> Los strings podrian contener espacios en blanco...
> Por ejemplo:
>
> MILISTA=$(find /algunlugar -type f)
> a) Como puedo recorrer los elementos de MILISTA ?
> En ppio el "for A in $MILISTA" separa por espacios y no por newlines...
> googleando encontre que se puede cambiar la variable de ambiente "IFS"
> para definir el separador que usar el for, asi
> IFS=$'\n'
> for A in $MILISTA ; do
> echo $A
> done
IFS es bastante especial, si lo cambias y pretendes seguir operando con cosas
separadas por campos es probable que te convenga volverlo al valor anterior.
> Esto funciona ok, pero...hay alguna manera mas intuitiva de hacerlo ??
Para cierto valor de "intuitivo", si:
echo "$MILISTA" | while read line; do
echo "$line"
done
> b) NO ENTIENDO COMO ES QUE SE INTERPRETA $'\n' !!!!! =(
> Es decir...funciona, pero....que demonios es $'\n' ??
Es la forma tradicional de representar el caracter nueva linea (byte 10).
--
Se necesitan voluntarios para dominar el mundo.
Saludos /\/\ /\ >< `/
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion