Scripts en bash con espacios

Un pequeño script en Bash como el siguiente:

for i in ../*zip; do unzip $i; done

falla si dentro del directorio hay nombres de fichero con espacios. La forma de evitarlo es sustituir la variable IFS (separados de campos) y hacer que tome sólo los cambios de línea. Para ello, hay que añadir la siguiente línea al principio del script:

IFS=$'\n'

o

export IFS=$'\n'

si estamos en una shell interactiva.