Me gustaría saber por qué si "tar -czf" un archivo / directorio, osx agrega un: ._ para cada archivo? Veo esto cuando descomprimo en Linux. O cuando trabajo con el proyecto descomprimido en eclipse, ya que no me gustan en absoluto. Yo uso 10.7.5.
Me gustaría saber por qué si "tar -czf" un archivo / directorio, osx agrega un: ._ para cada archivo? Veo esto cuando descomprimo en Linux. O cuando trabajo con el proyecto descomprimido en eclipse, ya que no me gustan en absoluto. Yo uso 10.7.5.
Respuestas:
El tar de OS X usa el formato AppleDouble para almacenar atributos extendidos y ACL. tar y Archive Utility también saben cómo convertir los archivos ._ a los formatos nativos, pero los archivos ._ se mantienen si el archivo se extrae en otra plataforma o en un volumen que no sea HFS.
Por lo general, solo puede indicarle a tar que elimine los metadatos configurando COPYFILE_DISABLE en algún valor:
$ xattr -l file.jpg
com.apple.quarantine: 0002;50d20c48;Tweetbot;
$ tar -cf 1.tar file.jpg
$ tar -tf 1.tar
./._file.jpg
file.jpg
$ COPYFILE_DISABLE=1 tar -cf 2.tar file.jpg
$ tar -tf 2.tar
file.jpg
Información almacenada como atributos extendidos:
Puede ver las ACL con ls -le
:
$ ls -led /Applications/
drwxrwxr-x@ 146 root admin 4964 Jun 17 22:53 /Applications/
0: group:everyone deny delete
--disable-copyfile
Esos archivos siempre estuvieron allí, pero son invisibles en Finder (y en la mayoría de las aplicaciones de Mac OS). Ver /superuser/212896/
editar
Es decir: estos archivos contienen los atributos de archivo extendido ... en.wikipedia.org/wiki/Extended_file_attributes ... y se crearon tan pronto como MacOS dio atributos extendidos a los archivos. Por lo tanto, estos archivos ._ * no se crearon para el archivo tar.