В macOS получение URL-адресов типов файлов может быть полезно при работе с различными задачами управления файлами или при взаимодействии с определенными типами файлов в ваших приложениях. В этой статье мы рассмотрим различные методы извлечения URL-адресов типов файлов в macOS, сопровождаемые примерами кода. Итак, давайте углубимся и откроем для себя несколько полезных приемов!
Метод 1: использование терминала
Терминал в macOS предоставляет мощный интерфейс командной строки, который можно использовать для извлечения URL-адресов типов файлов. Мы можем использовать команду mdls, что означает «список метаданных», для получения информации о файле, включая его тип URL. Откройте Терминал и выполните следующую команду:
mdls -name kMDItemContentTypeTree <path_to_file>
Замените <path_to_file>фактическим путем к вашему файлу. Эта команда отобразит URL-адрес типа файла, который представляет его тип файла в иерархической структуре.
Метод 2: Рабочий процесс Automator
macOS включает встроенный инструмент автоматизации Automator, который позволяет создавать собственные рабочие процессы. Мы можем создать рабочий процесс Automator для извлечения URL-адресов типов файлов. Выполните следующие действия:
- Запустите Automator из папки «Приложения».
- Выберите «Быстрое действие» в качестве типа документа.
- В строке поиска введите «Получить метаданные файла» и перетащите его в область рабочего процесса.
- Добавьте действие «Запустить AppleScript» из библиотеки.
- Замените сценарий по умолчанию следующим кодом:
on run {input, parameters}
set theFile to POSIX path of (input as string)
set fileTypeURL to (do shell script "mdls -name kMDItemContentTypeTree " & quoted form of theFile)
return fileTypeURL
end run
- Сохраните рабочий процесс под подходящим именем, например «Извлечь URL-адрес типа файла».
- Теперь щелкните правой кнопкой мыши любой файл, перейдите в меню «Быстрые действия» и выберите новый созданный рабочий процесс. В диалоговом окне отобразится URL-адрес типа файла.
Метод 3: создание сценариев Python
Если вы предпочитаете использовать Python, вы можете извлечь URL-адреса типов файлов с помощью библиотеки pyobjc, которая предоставляет привязки для платформ macOS. Установите pyobjcс помощью менеджера пакетов pip. Затем используйте следующий фрагмент кода:
import objc
from Foundation import NSURL
from LaunchServices import (
LSCopyItemInfoForURL,
kLSRequestAllInfo,
kLSItemContentTypeTree,
)
def get_file_type_url(file_path):
url = NSURL.fileURLWithPath_(file_path)
_, file_info, _ = LSCopyItemInfoForURL(url, kLSRequestAllInfo, None)
type_url = file_info.get(kLSItemContentTypeTree)
return type_url
# Usage example
file_path = "/path/to/your/file"
type_url = get_file_type_url(file_path)
print(type_url)
Этот скрипт Python использует платформу Launch Services для извлечения URL-адреса типа файла на основе пути к файлу.
Извлечение URL-адресов типов файлов в macOS необходимо для различных операций, связанных с файлами. В этой статье мы рассмотрели три различных метода: использование терминала, создание рабочего процесса Automator и использование сценариев Python с библиотекой pyobjc. Используя эти методы, вы можете расширить возможности обработки файлов в приложениях macOS.