Làm cách nào để lấy UTI của tệp từ dòng lệnh trong Mac OS X?


24

Có tiện ích dòng lệnh nào mà tôi có thể truyền tên tệp, sẽ trả về UTI áp dụng cho tệp đó không?

Ví dụ:

hypothetical-uti-fetcher /Library/Desktop\ Pictures/Aqua\ Blue.jpg

có thể cho tôi:

public.jpeg
public.image
public.data

Câu trả lời:


27

Bạn có thể sử dụng mdlslệnh để tìm UTI cho một tệp:

mdls /Library/Desktop\ Pictures/Aqua\ Blue.jpg

và nó sẽ cung cấp cho bạn một loạt thông tin, về phía trên nó sẽ nói một cái gì đó như

kMDItemContentType             = "public.plain-text"

Hi vọng điêu nay co ich!


3
Xuất sắc. Cảm ơn. mdls -name kMDItemContentTypeTree /Library/Desktop\ Pictures/Aqua\ Blue.jpgchính xác là những gì tôi muốn.
smokris

Bạn được chào đón, tôi rất vui vì điều này đã giúp.
Wuffers

1
Giả sử tôi đã tắt chỉ mục Spotlight của mình và dường như tôi không lưu trữ siêu dữ liệu. (mdls any-file chỉ nói rằng tập tin không được tìm thấy). Làm thế nào để các dịch vụ md * tạo ra các loại nội dung ở vị trí đầu tiên?
Aurel Bílý

7

Lệnh mdls dường như chỉ hoạt động trên các tệp được lập chỉ mục Spotlight. Nếu bạn chạy nó trên một hình ảnh đĩa được gắn, ổ đĩa cd hoặc ngón tay cái, nó có thể không trả lại thông tin nào cả.

Khi bạn đang phát triển Plugin Quicklook, việc sử dụng lệnh sau để xem UTIs Quicklook nghĩ gì về một tệp có và plugin nào được sử dụng để xem trước:

qlmanage -d 4 -p /path/to/file

Các trang web được trích dẫn không còn có sẵn.
Randall
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.