Я использую OS X Mavericks и у меня смонтированы некоторые накопители компании (с использованием smb или cfs). (кого - л: //username@address.path.toserver.com/directory/data). Когда я работаю с файлами на диске или копирую файлы на диск, создаются некоторые скрытые файлы. Большинство из этих файлов начинаются с точки-тире, ._
а затем имя исходного файла, например:
._test001.png
._test002.png
._test003.png
И в большинстве случаев знаменитый ._.DS_Store
и .DS_Store
тоже есть.
На моем Mac эти .
точечные элементы невидимы, но мои коллеги по Windows видят эти файлы. Как я могу запретить OS X делать эти странные невидимые файлы?
На support.apple.com (и других интернет-ресурсах) вы можете найти «запись по умолчанию», чтобы отключить создание файлов .DS_Store на ваших сетевых дисках. Но это не работает в Mavericks:
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
На данный момент я использую этот oneliner, но rm -rf
в этом случае делать что-то не так.
find . -type f -name "._*" -exec rm "{}" \;
Редактировать: я не хочу удалять файлы или исключать их из копирования. Я хочу, чтобы они не создавались в первую очередь.
Изменить: я предпочитаю «родное» решение OS X, чем сторонние приложения.
Изменить: На эти вопросы есть два ответа, один для файлов ._ и один для файлов .DS_Store. За это вознаграждение dot_clean
, это собственное приложение командной строки очищает все ._ файлы. К сожалению, это не очищает файлы .DS_Store, это может быть эффективно сделано с помощью Asepsis. Asepsis хранит .DS_Stores в фиксированном месте, а не в самой папке.
источник
Ответы:
Признаюсь, я не заметил, что
defaults write
команда перестала работать в Маверикс. Тем не менее, когда я делаю чистое сетевое монтирование, вместо вашего одного лайнера,find
иrm
я использую это:Manfile объясняет:
Я не использую флаг -m, но вы можете найти его полезным в вашей ситуации.
Вот еще один человек, активно пытающийся остановить создание файлов .DS_Store: http://www.aorensoftware.com/blog/2011/12/24/death-to-ds_store/ - похоже, он не хочет, чтобы они были на дисках столько, сколько он не хочет их в сети!
источник
Только что попробовал, и это работает в Mavericks (по крайней мере для отключения .DS_Store, а не сетевых ресурсов):
Вам просто нужно помнить, чтобы перезапустить Finder:
источник
.DS_Store
файлы все еще создаются.DS_Store
не AppleDouble файлы, это просто «обычные» невидимые файлы, созданные Finder. Таким образом, просмотр этих файлов .DS_Store не является признаком того,DSDontWriteNetworkStores
работает или нет.Эти
._
файлы являются файлами AppleDouble, которые используются для хранения метаданных, таких как расширенные атрибуты, списки ACL, флаги файлов и вилки ресурсов.Чтобы удалить их, запустите:
Вы можете видеть, имеют ли файлы расширенные атрибуты, ACL или флаги файлов с помощью
ls -l@eO
. Эти._
файлы обычно создаются , потому что файлы имеют расширенные атрибуты. Вы можете использоватьxattr -c
для удаления расширенных атрибутов илиchmod -N
для удаления ACL.cp -X
иrsync
копировать файлы без расширенных атрибутов, ACL, файловых флагов или разветвлений ресурсов.источник
Поскольку вам придется отключить запись скрытых файлов на каждом Mac, который может подключаться к вашему общему ресурсу, лучшим вариантом будет остановить это на общем ресурсе, а не на клиентах.
Все, что вам нужно сделать, это отредактировать вашу конфигурацию общего ресурса (например, в Linux в /etc/samba/smb.conf) и добавить следующую опцию в конфигурацию общего ресурса:
Теперь никакие клиенты Mac не могут сохранять любые файлы с этими шаблонами в вашу общую папку.
источник
delete veto files = yes
не удаляет эти точечные файлы, он просто гарантирует, что вы можете удалить папку, содержащую файлы, которые были скрыты от просмотра этойveto files
опцией, поэтому он не выполняет то, что было после ОП (и то, что я тоже тщетно ищу для).Я не пробовал это сам, и я понимаю, что OP предпочитает нативные решения, но тем не менее:
Есть приложение под названием Asepsis, которое работает, перенаправляя создание этих файлов в специальную папку, то есть таким образом, чтобы они не появлялись.
источник
Не родное решение, и не фактически предотвратить эти файлы записываются, но он активно гоняться за ними и удалять , как только они написаны ...
BlueHarvest
Никакой принадлежности, я просто успешно использую ее в течение нескольких лет.
источник
Насколько я знаю, вы не можете предотвратить, что эти файлы будут созданы. По крайней мере, Finder создаст их.
Удаление этих файлов тоже не поможет - потому что в следующий раз, когда вы получите доступ к тому и его папкам на Mac, Finder создаст их снова.
Я удивлен, что ваши коллеги по Windows видят эти файлы. Я работаю уже много лет с моим Mac, использующим Mac и Windows - и я никогда не вижу этих файлов. Ни на Mac, ни на Windows.
Эти файлы помечены как «скрытые» по умолчанию и не будут отображаться, если в Windows настроено скрытие скрытых файлов и папок.
источник
Я нашел очень простой и бесплатный способ избавиться от go ._ файлов, особенно от внешнего fat32 HD.
Запустите OnyX (бесплатное программное обеспечение). Из утилиты, перейдите в AppleDouble, выберите ... папку. Это оно!!!
источник