Коли я відкриваю інформацію про файл і змінюю програму, відповідальну за цей файл, де ця перезапис зберігається в системі?
Коли я відкриваю інформацію про файл і змінюю програму, відповідальну за цей файл, де ця перезапис зберігається в системі?
Відповіді:
Дані зберігаються у вилці ресурсу файла, який зберігається як розширений атрибут com.apple.ResourceFork
.
Для прикладу візьміть наступне -
Скориставшись терміналом , створіть тестовий файл, назвавши його "test.txt"
System:~ user$ touch test.txt
За замовчуванням файли розширень "txt" відкриваються за допомогою TextEdit . (Якщо ви не змінили системний стандарт за замовчуванням.) У Finder змініть асоціацію на щось інше. Поверніться до Терміналу ..
System:~ user$ ls -l@ test.txt
-rw-r--r--@ 1 user staff 0 Sep 29 11:21 test.txt
com.apple.ResourceFork 1338
@
Символ позначає файл розширені атрибути, і ls -l@
перераховує атрибути як частина довгого формату.
Якщо у вас встановлені Інструменти для розробників, ви можете використовувати DeRez
для огляду вилки ресурсу, і ви побачите шлях програми, яку ви вибрали у вилці.
Це архаїчно, застаріло, і його можна (по праву) назвати хаком ... але враховуючи, що система ідентифікаторів UTI і пакетів "неповна", це використовує Apple.
ls
для 10.7.4, @ по - , як і раніше приймаються.
Я не впевнений у Mac OS X, але Mac OS (тобто Classic), який використовується для зберігання цього виду ресурсу кожного файлу з двома відомостями: код типу та код творця. Обидві були чотирибайтовими послідовностями і, як правило, виводилися у вигляді чотирьох символьних рядків. Код типу визначає тип файлу (наприклад, TEXT для текстового файлу, APPL для програми), тоді як код творця ідентифікує програму, яка створила файл (наприклад, ttxt для SimpleText або MSWD для Microsoft Word). Таким чином, файл, створений SimpleText, відкриється в SimpleText за замовчуванням, при цьому все ще ідентифікується як текстовий файл і, таким чином, сумісний з Microsoft Word, якщо ви вирішите відкрити його вручну за допомогою Word.
Snow Leopard більше не звертає уваги на типи та коди творців, замінивши їх на UTI , які нагадують типи MIME, хоча і більш гнучкі, і їх можна використовувати для визначення програми за замовчуванням, а також для визначення, які програми сумісні з заданою файл, але я не впевнений, як зроблені окремі зміни.
ls
підтримує наступні параметри.ls -ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1