Точка в начале имен файлов.

Скрытые файлы

• специальный смысл точки в начале имен файлов

• скрытые файлы, папка .hidden

• алгоритм работы Finder'a при работе с файлами и папками

• особенности переноса файлов с тома HFS+ на том UFS и обратно Точка в начале UFS-файлов означает, что данный файл содержит информацию о настройках, или установках (preferences). Такие файлы в UNIXe считаются системными.

В «классической» Mac OS фирма Apple также использовала точку в начале имен некоторых системных файлов и не рекомендовала использовать точку в начале имен обычных файлов. Но в целом точка являлась вполне допустимым символом в именах файлов и никакого специального значения не имела.

Mac OS X позволяет работать в неоднородной среде, содержащей как тома с файловой системой HFS или HFS+, так и тома с файловой системой UFS. Поэтому все файлы, имена которых начинаются с точки, считаются системными, и Finder их не показывает.

Кроме того, имеется специальный файл .hidden, содержащий дополнительный список папок и файлов, которые надо скрыть. В этом файле указаны имена, как минимум, следующих папок и файлов:

Desktop DB

Desktop DF

bin

dev

usr

Finder использует атрибуты файла и расширение к имени файла в качестве основной информации для принятия решения о том, как интерпретировать файл, чтобы правильно его отображать на экране и правильно с ним работать. Стандартная последовательность логических шагов Finder'a, связанная с каким-либо объектом файловой системы, следующая:

• Проверить:

1. Это файл или папка?

Если это папка, Finder определяет, установлен ли бит пакета; если это файл - какого он типа (см. п. 4).

2. Это простая папка или пакет (bundle)?

Чтобы определить, является ли папка пакетом или обычной папкой, используется бит пакета и расширение имени папки. Наличие бита пакета не обязательно. Так, например, в системных динамически разделяемых библиотеках (frameworks) самой фирмы Apple бит пакета всегда выключен.

3. Каков тип этого пакета?

Finder получает код типа папки-пакета и код ее создателя, хранящиеся внутри самой папки-пакета. По коду типа (по расширению имени папки-пакета, если код типа отсутствует) Finder определяет тип пакета. Если эта папка-пакет не является динамически разделяемой библиотекой, Finder трактует пакет как файловую упаковку, то есть отображает его на экране и обращается с ним как с единым файлом. Пользователь при этом может даже не догадываться, что на самом деле это не один файл, а целая папка.

4. Является ли файл программой?

У пакетов-программ (это определяется кодом типа и кодом создателя) Finder прячет расширение .арр, если оно имеется, и добавляет информацию о ней в соответствующий список (application's information property list), хранящийся в базе данных программ. Если файл не программа, то он трактуется как документ.

• Показать документ.

Finder консультируется с базой данных программ и помещает соответствующую иконку рядом с именем файла на экране. Если такой иконки в базе данных нет, то берется иконка стандартного обобщенного документа.

Если пользователь пытается открыть документ, Finder проверяет коды создателя и типа файла (для файловых систем HFS, HFS+) или расширение имени файла (для файловой системы UFS). Он использует эту информацию, чтобы определить программу, соответствующую данному типу документа.

• Если найдена только одна подходящая программа, она запускается и открывает документ.

• Если нет ни одной программы, Finder выдает диалоговое окно, в котором пользователь должен сам выбрать программу из списка имеющихся. Эта информация затем добавляется в базу данных программ пользователя.

• Если имеется несколько программ, которые могут работать с документами конкретного типа, и в самом документе не содержится кодов типа и создателя (то есть файл не является файлом файловой системы HFS или HFS+), Finder открывает документ одной из подходящих программ по своему усмотрению.

• Если у файла нет ни кода создателя, ни кода типа, ни расширения имени файла, то Finder не знает, что же делать с документом, и ничего с ним не делает. Можно попытаться принудительно открыть такой документ какой-либо программой с помощью команды Open, но результат не гарантируется.

Finder - основной «регулировщик» движения файлов в Mac OS X. Настоятельно рекомендуется пользоваться средствами Finder'a во всех случаях манипуляции с файлами, кроме случаев работы с помощью языка сценариев AppleScript или при необходимости применить одну из команд BSD-уровня. Почему?

Когда Finder копирует или перемещает файлы, он старается максимально использовать все свои возможности, чтобы ничего не исказить и не потерять.

Если Finder копирует или перемещает файлы между двумя томами с файловой структурой HFS или HFS+, то никаких преобразований делать не надо, они пересылаются как есть. То же самое происходит при пересылке между двумя UFS-томами.

Однако при пересылке файлов между томами HFS, HFS+ и UFS приходится принимать специальные меры по сохранению и восстановлению данных. Finder выделяет информацию, не входящую в ветвь данных (атрибуты Finder'a, ветвь ресурсов), и помещает ее в невидимый файл, который имеет то же имя, что и исходный файл, но с префиксом «._». Этот файл записывается «рядом» с оригиналом. Так, например, если мы хотим переслать файл с именем MyPicturejpeg с тома HFS+ на том UFS, будет создан дополнительный невиди мый файл ._MyPicture.jpeg в той же папке, где располагается и сам файл MyPicture.jpeg.

Когда Finder копирует UFS-файл на том HFS+ или HFS, он ищет невидимый файл с тем же именем, но с префиксом «._», Если такой файл находится, Finder восстанавливает ресурсную ветвь и атрибуты Finder'a на основе информации, хранящейся в невидимом файле. Если такого файла не обнаруживается, значит, копируемый файл не имел ресурсной ветви, и, следовательно, ничего восстанавливать не надо.

То же самое происходит и при переносе данных с томов HFS, HFS+ на тома NTFS или FAT32 при подключении к файловым серверам Windows. Поэтому не удивляйтесь, когда обнаружите рядом с переданными файлами такие «странные» двойники.

Замечание. Файловая система UFS чувствительна к регистру, то есть прописные и строчные буквы в именах файлов считаются различными. HFS+ такого разграничения не делает, но полностью сохраняет информацию о регистре в именах файлов. Об этом надо помнить при перемещении файлов между томами UFS и HFS+.

Некоторые особенности mac os x | Mac OS X | Desktop folder


Mac OS X



Новости за месяц

  • Декабрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31