¿A qué desarrollador web que use Mac OS no le ha pasado? Comprimes todos los archivos de tu proyecto usando tar, y cuando vas a descomprimir el archivo en destino, te encuentras con que se extraen un montón de ficheros que empiezan con el nombre ._
La razón de que se creen estos archivos radica en las particularidades del sistema de archivos de Mac, HFS+. Se trata de un sistema para poder mantener los atributos extendidos de los archivos cuando se exportan a otros sistemas de ficheros, pero en el 99% de ocasiones nos es totalmente innecesario (por ejemplo, si queremos publicar nuestros archivos en un servidor web que use Linux).
Podemos evitarlo de varias maneras:
Estableciendo la variable de entorno COPYFILE_DISABLE a 1 antes de ejecutar el comando:
$ COPYFILE_DISABLE=1 tar cvjf ../miarchivo.tar.bz2 *
O bien, editando el archivo .bash_profile de nuestro usuario:
$ cd $ echo "COPYFILE_DISABLE=1; export COPYFILE_DISABLE" >> .bash_profile
¿Qué ocurre si ya hemos creado el archivo comprimido y no podemos volver a crearlo? Podemos decirle a tar que obvie los archivos que comiencen por ._
$ tar --exclude="._*" -zxjf miarchivo.tar.bz2
O bien podemos borrar los archivos que ya han sido creados:
$ find . -name '._*' -exec rm -v {} \;
No hay comentarios