Когда я ls
мой Рабочий стол от терминала (при помощи ls ~/Desktop
), я вижу названный файл Icon?
. Насколько я могу сказать, это пусто (nano Icon?
шоу ничто). Это не обнаруживается на моем фактическом Рабочем столе, и open Icon?
показывает предупреждение Средства поиска
Этот объект используется Mac OS X и не может быть открыт
Вот вывод от mdls Icon?
:
kMDItemContentType = ""
kMDItemFSContentChangeDate = 2009-09-23 13:32:52 -0600
kMDItemFSCreationDate = 2009-09-20 07:27:46 -0600
kMDItemFSCreatorCode = "MACS"
kMDItemFSFinderFlags = 16384
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 1
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "Icon "
kMDItemFSNodeCount = 0
kMDItemFSOwnerGroupID = 20
kMDItemFSOwnerUserID = 501
kMDItemFSSize = 0
kMDItemFSTypeCode = "icon"
У кого-либо есть идея относительно того, каково это?
На самом деле это имя Icon\r
, а \r
- возврат каретки 0x0D
. Если позволить оболочке автозавершить путь в терминале, то получится Icon^M
, ^M
будучи \r
.
Icon^M
является файлом, существующим во всех каталогах, которые имеют пользовательскую иконку в Finder. При изменении значка каталога, например, в диалоге Получить информацию путем вставки изображения в значок в левом верхнем углу, создаётся файл Icon^M
.
Изменение значка тома создаёт скрытый .VolumeIcon. icns
вместо него.
Он невидим в Finder, потому что его атрибут hidden
установлен.
$ ls -lO Icon^M
-rw-r--r--@ 1 danielbeck staff hidden 0 24 Apr 23:29 Icon?
Измените его с помощью chflags nohidden Icon^M
.
В то время как вилка данных файла (и.). e. содержимое) пустое (т.е. в терминале размер файла 0 байт), данные иконки хранятся в ресурсной вилке файла .
$ ls -l@ Icon^M
com.apple.ResourceFork 350895
Вы можете скопировать ресурсную вилку в файл (для просмотра, например, в шестнадцатиричном редакторе) вот так:
$ cp Icon^M/..namedfork/rsrc Icondata
Самый простой способ получить изображение - это скопировать иконку из диалога Get Info папки, в которой она находится в буфере обмена, а затем создать новое изображение из буфера обмена в Предварительном просмотре (Cmd-N
). Тогда по умолчанию это изображение icns
.
Его формат JPEG 2000 в соответствии с версией Mac OS XnView, и вы должны иметь возможность открыть его с помощью этой программы. Похоже, что он не работает с другими программами, которые должны поддерживать JPEG 2000, поэтому информация об этом формате, вероятно, неверна.
.Икона?Файл внутри каталога содержит изображение пользовательского значка для этого каталога. Сам образ хранится внутри расширенного атрибута файла, а именно, com.apple.ResourceFork
, поэтому файл Icon?
кажется не имеет длины.
Вы можете получить эти данные с помощью $ xattr -p xattr -p com.apple.ResourceFork Icon?
или просмотреть все расширенные атрибуты с помощью $ xattr -l иконки?
В Snow Leopard, по крайней мере, они, кажется, были сняты с производства для системных иконок (в случае ~/Desktop/, эта иконка будет видна при просмотре Вашего домашнего каталога в режиме просмотра иконок), но для двух пользовательских иконок каталогов, которые есть в моей системе, она все еще существует.
.