viernes, 9 de mayo de 2008

Descomprimir múltiples ficheros

Contenidos

1. .zip

for file in *.zip; do unzip "${file}"; done

2. .gz

'''gunzip *.gz'''

3. .bz2

'''bunzip2 *.bz2'''

4. tar.gz

for file in *.tar.gz; do tar zxf "${file}"; done

5. tar.bz2

for file in *.tar.bz2; do tar jxf "${file}"; done

6. Uso de los scripts del shell

Si usted usa uno de estos extractos de códigos que usan ciclos for con un número arbitrario de archivos, usted puede necesitar que el shell use los “nullglobs”.

Por ejemplo, normalmente *.tar.gz evaluará con *.tar.gz cuando no se encuentren ficheros que coincidan con esta expansión, en vez de evaluar a una cadena vacía, como resultado 'tar' es ejecutado con esta cadena como parámetro. Para evitar esto, usted puede solicitar que el shell use nullglobs con:

shopt -s nullglob
Si no se encuentran coincidencias, el shell retornará una cadena vacía y el ciclo for será finalizado.

No hay comentarios: