system_profiler SPDisplaysDataType
sẽ cung cấp cho bạn độ phân giải vật lý của màn hình Retina, nhưng nó sẽ không cung cấp cho bạn độ phân giải (tỷ lệ) hiệu quả. Nếu bạn cần điều đó, bạn có thể sắp xếp nó vớiosascript
:
$ osascript -e 'tell application "Finder" to get bounds of window of desktop'
0, 0, 2048, 1280
Lưu ý rằng nếu bạn đang chạy một thiết lập đa màn hình, điều này có thể yêu cầu một số giải thích. Chẳng hạn, tôi có Retina iMac 21 "với độ phân giải vật lý 4096x2304 và độ phân giải 2560x1440; Tôi cũng có một màn hình chân dung bên ngoài chạy ở 1440x2560:
┌───────┐┌─────────────┐
│ 1440 ││ 2560x1440 │
│ x2560 ││ │
│ ││ │
│ │└─────────────┘
│ │
│ │
└───────┘
Khi tôi chạy lệnh trên, nó báo cáo:
-1440, 0, 2560, 2560
Đây là các giới hạn của máy tính để bàn so với góc trên bên trái của màn hình chính :
x = -1440 0 2560
┌───────┐┌─────────────┐ y = 0
│ ││ │
│Monitor││ Monitor 0 │
│ 1 ││ │
│ │└─────────────┘
│ │
│ │
└───────┘ 2560
Như bạn có thể thấy, chính điều này không thực sự mang lại cho bạn độ phân giải dọc của màn hình chính (mặc dù bạn có thể tìm ra nó từ tỷ lệ khung hình vật lý).
Một tùy chọn khác là giải pháp sàng lọc tiện ích GPL (có sẵn thông qua Homebrew nếu bạn không muốn tự xây dựng nó). Dòng lệnh không giống bất kỳ thứ gì khác trên trái đất này, nhưng nó hoạt động:
$ screenresolution get
2018-04-20 10:00:14.935 screenresolution[12084:518367] starting screenresolution argv=screenresolution get
2018-04-20 10:00:14.938 screenresolution[12084:518367] Display 0: 2560x1440x32@0
2018-04-20 10:00:14.939 screenresolution[12084:518367] Display 1: 1440x2560x32@60
Là một phần thưởng, nó cũng cung cấp cho bạn độ sâu màu theo bit và, nếu có, tốc độ làm mới tính bằng Hz.