Como copiar o arquivo do PC para o Mac, preservando xattrs no arquivo de destino?

0

Eu tenho um arquivo M no meu Mac (OS X ML 10.8.4) e arquivo P no meu PC (Win7). O arquivo P era originalmente uma cópia do arquivo M, mas agora é um pouco atualizado. O arquivo M possui alguns atributos estendidos.

Como posso copiar o arquivo P no arquivo M, preservando os atributos estendidos no arquivo M?

Geralmente, se eu copiar e colar P em M através do compartilhamento de rede, os atributos estendidos em M serão perdidos.

Estou à procura de uma forma facilmente implementável / escalável. cat P > M não é realmente uma opção (nem mesmo se isso funciona). Poderia rsync ajudar aqui?

    
por 0cd 07.06.2013 / 12:18

1 resposta

0

Se ainda houver arquivos ._, você poderá mesclá-los com dot_clean:

$ ls -A
._test.txt test.txt
$ xattr -l test.txt
$ dot_clean .
$ ls -A
test.txt
$ xattr -l test.txt
com.apple.TextEncoding: utf-8;134217984

Você pode copiar atributos com xattr -wx e -px:

xattr -wx attributename "$(xattr -px attributename source.txt)" target.txt

xattr apenas imprime nomes de atributos se o argumento for um único arquivo:

for f; do
  for a in $(xattr "$f"); do
    xattr -wx $a "$(xattr -px $a ~/Documents/Original/"$f")" "$f"
  done
done
    
por 08.06.2013 / 12:51