Geçerli ekran çözünürlüğünü OS X'teki komut satırından nasıl alabilirim?


Yanıtlar:


75
system_profiler SPDisplaysDataType | grep Resolution

6
Bir Macbook pro'da (10.8.3) bu, mevcut / seçilen ekran çözünürlüğünü değil, yalnızca LCD'nin maksimum çözünürlüğünü verir.
studgeek

1
Harici bir ekrana sahip olan 10.8.4’ü çalıştıran Air’mde, bu hem havanın çözünürlüğünü hem de harici ekranın çözünürlüğünü ayrı satırlarda gösterir.
Jim Stewart,

@studgeek Bu hala bir sorun olup olmadığından emin değilim, ancak Havamda geçerli çözünürlüğü gösteriyor. Pro'nun bu davranışı değiştirmesi çok garip.
Gerry

1
Mavericks'i çalıştıran MacBook Pro 2011 modelinde geçerli çözünürlüğü görüntüler.
daviewales,

1
OSX 10.9.4
aymericbeaumet 21.04

12

Tek bir retina ekranının mevcut sanal çözünürlüğünü hızlıca okumak için:

$ osascript -e 'tell application "Finder" to get bounds of window of desktop'
0, 0, 2048, 1280

Çoklu monitör kurulumlarının sonuçları, hangi ekranın birincil olduğuna ve nasıl düzenlendiklerine bağlı olarak değişir. Burada daha fazla oku


1
Bu çalışır, Gerry tarafından verilen cevap yanlıştır.
Bulanık

Harika! Bu çok daha hızlı system_profiler!
Dan

Yine de Retina durumunda farklı sayılar veriyorlar.
Nakilon

3

Yardımcı programı screenresolutionekran çözünürlüğünü almak için kullanıyorum:

$ /usr/local/bin/screenresolution get 2>&1 | grep -oE 'Display 0: [0-9]+' | grep -Eo '[0-9]+$'  
1920

0

Bu konuda yardımcı olabilecek displayplacer yazdım . Yürütün displayplacer listve tüm ekranlar için geçerli çözünürlüğü (ve daha fazla bilgi) gösterecektir.

$ displayplacer list
Persistent screen id: A46D2F5E-487B-CC69-C588-ECFD519016E5
Contextual screen id: 1124216237
Type: 40 inch external screen
Resolution: 3840x2160
Hertz: 60
Color Depth: 4
Scaling:off
Origin: (0,0) - main display
Rotation: 0
Resolutions for rotation 0:
  mode 0: res:3840x2160 hz:60 color_depth:4 <-- current mode
  mode 1: res:3840x2160 hz:60 color_depth:8
  mode 2: res:3840x2160 hz:30 color_depth:4
...
Persistent screen id: 2960D639-F605-5BB4-A53D-A3263008894C
Contextual screen id: 69733451
Type: MacBook built in screen
Resolution: 1680x1050
Hertz: N/A
Color Depth: 4
Scaling:on
Origin: (-1680,1291)
Rotation: 0 - rotate internal screen example (may crash computer, but will be rotated after rebooting): `displayplacer "id:2960D639-F605-5BB4-A53D-A3263008894C degree:90"`
Resolutions for rotation 0:
  mode 0: res:1440x900 color_depth:4 scaling:on
  mode 1: res:1440x900 color_depth:8 scaling:on
  mode 2: res:720x450 color_depth:4 scaling:on

grep, çıktıyı ayrıştırmak için basit bir yaklaşımdır.

$ displayplacer list | grep -e Resolution: -e Scaling:
Resolution: 3840x2160
Scaling:off
Resolution: 1680x1050
Scaling:on

Homebrew üzerinden de temin edilebilir brew tap jakehilborn/jakehilborn && brew install displayplacer


1
(1) Bu programın yazarı olduğunuzu kabul ediyorum (isim aynıdır). Programdan bahsettiğiniz anda bunu açıkça ve açıkça söylemelisiniz. (2) Bu, sadece programınızı yönlendirmek yerine, soruyu ne istediğini elde etmek için programınızın çıktısını nasıl ayrıştıracağınızı gösterdiyseniz, bu daha iyi bir cevap olacaktır. ……………………………………… Lütfen yorumlarda cevap vermeyin;  cevabınızı daha net ve daha eksiksiz hale getirmek için düzenleyin .
Scott
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.