Eu uso o OS X Mavericks e tenho algumas unidades de armazenamento da empresa montadas (usando smb ou cfs). (smb: //[email protected]/directory/data). Quando trabalho com arquivos na unidade ou copio arquivos para a unidade, alguns arquivos ocultos são criados. A maioria desses arquivos começa com ponto-traço ._
e, em seguida, o nome do arquivo do arquivo original, como:
._test001.png
._test002.png
._test003.png
E na maioria das vezes, os famosos ._.DS_Store
e .DS_Store
também estão lá.
No meu Mac, esses .
itens de ponto são invisíveis, mas meus colegas do Windows veem esses arquivos. Como posso impedir que o OS X crie esses estranhos arquivos invisíveis?
Em support.apple.com (e outras fontes da Internet), você pode encontrar uma 'gravação de padrões' para desativar a criação de arquivos .DS_Store nas unidades de rede. Mas isso não funciona no Mavericks:
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
Por enquanto, eu uso esse oneliner, mas fazer um rm -rf
parece errado neste caso.
find . -type f -name "._*" -exec rm "{}" \;
Editar: não quero excluir os arquivos ou excluí-los da cópia. Eu quero que eles não sejam criados em primeiro lugar.
Editar: prefiro uma solução OS X 'nativa' do que aplicativos de terceiros.
Editar: Esta pergunta tem duas respostas, uma para os arquivos ._ e outra para os arquivos .DS_Store. A recompensa é recompensada dot_clean
, pois esse aplicativo de linha de comando nativo limpa todos os arquivos ._. Infelizmente, não limpa os arquivos .DS_Store, isso pode ser feito efetivamente com Asepsis. Asepsis armazena .DS_Stores em um local fixo e não na própria pasta.
fonte
Respostas:
Admito, não tinha notado que o
defaults write
comando parou de funcionar em Mavericks. No entanto, quando limpo montagens de rede, em vez de um linerfind
erm
, uso o seguinte:O manfile explica:
Eu não uso o sinalizador -m, mas você pode achar útil na sua situação.
Aqui está outra pessoa tentando impedir que os arquivos .DS_Store sejam criados: http://www.aorensoftware.com/blog/2011/12/24/death-to-ds_store/ - parece que ele não os quer em unidades por mais que ele não os queira na rede!
fonte
Apenas tentei, e isso funciona no Mavericks (pelo menos para desativar .DS_Store, não compartilhamentos de rede):
Você só precisa se lembrar de reiniciar o Finder:
fonte
.DS_Store
arquivos ainda estão sendo criados.DS_Store
são arquivos AppleDouble, são apenas arquivos invisíveis "normais" criados pelo Finder. Portanto, a visualização desses arquivos .DS_Store não indica seDSDontWriteNetworkStores
funciona ou não.Os
._
arquivos são arquivos AppleDouble usados para armazenar metadados como atributos estendidos, ACLs, sinalizadores de arquivo e bifurcações de recursos.Para excluí-los, execute:
Você pode ver se os arquivos possuem atributos estendidos, ACLs ou sinalizadores de arquivos
ls -l@eO
. Os._
arquivos geralmente são criados porque os arquivos possuem atributos estendidos. Você pode usarxattr -c
para excluir atributos estendidos ouchmod -N
para excluir ACLs.cp -X
ersync
copie arquivos sem atributos estendidos, ACLs, sinalizadores de arquivo ou bifurcações de recursos.fonte
Como você teria que desativar a gravação de arquivos ocultos em todos os Mac que poderiam se conectar ao seu compartilhamento, uma opção melhor seria interromper isso no compartilhamento e não nos clientes.
Tudo o que você precisa fazer é editar sua configuração de compartilhamento (por exemplo, no Linux em /etc/samba/smb.conf) e adicionar a seguinte opção à sua configuração de compartilhamento:
Agora, nenhum cliente Mac pode salvar arquivos com esses padrões no seu compartilhamento.
fonte
delete veto files = yes
não exclui esses arquivos de ponto, apenas garante que você possa excluir uma pasta que contenha arquivos que foram ocultados pela visualização pelaveto files
opção, para que não realize o que o OP buscava (e pelo que também estou procurando em vão para).Eu não tentei isso sozinho e percebo que o OP prefere soluções nativas, mas mesmo assim:
Existe um aplicativo chamado Asepsis que funciona redirecionando a criação desses arquivos para uma pasta especial, ou seja, de forma a impedir que eles apareçam.
fonte
Não uma solução nativa, nem , na verdade, impedir que esses arquivos sendo escrito, mas não perseguir ativamente atrás deles e excluir assim que eles são escritos ...
BlueHarvest
Sem afiliação, eu a uso com bastante sucesso há vários anos.
fonte
Tanto quanto sei, você não pode impedir que esses arquivos sejam criados. Pelo menos o Finder os criará.
A exclusão desses arquivos também não ajudará - porque na próxima vez que você acessar o volume e suas pastas no Mac, o Finder os criará novamente.
Estou surpreso que seus colegas do Windows vejam esses arquivos. Estou trabalhando há muitos anos com meu Mac usando Mac e Windows - e nunca vejo esses arquivos. Nem no Mac nem no Windows.
Esses arquivos são marcados como "ocultos" por padrão e não aparecerão se você tiver o Windows definido para ocultar arquivos e pastas ocultos.
fonte
Eu encontrei uma maneira muito fácil e gratuita de se livrar de arquivos ._, especialmente de um HD externo fat32.
Inicie o OnyX (software livre). Em Utilitários, vá para AppleDouble, selecione ... a pasta. É isso aí!!!
fonte