Hur man får aktuell skärmupplösning från kommandoraden i Mac OS X
Vanligtvis kommer Mac-användare att hämta skärmupplösningen för anslutna skärmar via systempreferenspanelen Bildskärmar i OS X. Det är verkligen inget fel med det tillvägagångssättet, det är enkelt och snabbt, men eftersom det använder det grafiska gränssnittet i OS X är det inte nödvändigt att använda för skript. ändamål eller fjärrhantering genom fjärrinloggning och SSH-anslutningar.I dessa situationer, och många andra, kanske du vill hämta den aktuella skärmupplösningen för skärmar från kommandoraden i Mac OS X.
Du kan få den exakta skärmupplösningen med hjälp av kommandot system_profiler, som hämtar detaljerad systeminformation som en kommandoradsversion av Apple System Profiler-verktyget, länge medföljt OS X. Syntaxen att använda är enkel, och du kommer förmodligen att vilja rensa upp utdata med grep för att bara visa upplösningen.
System_profiler-kommandot för att bara få upplösningen för anslutna skärmar är som följer, som vanligt med kommandoradssyntax, se till att kommandot finns på en enda rad:
system_profiler SPDisplaysDataType |grep Upplösning
Användningen av sudo är inte nödvändig, men du kan prefixa kommandot med det om du vill av någon anledning.
Utdata är lätt att läsa och bör se ut ungefär så här:
$ system_profiler SPDisplaysDataType |grep Upplösning Upplösning: 1920 x 1080
Om du använder flera skärmar med Mac kommer upplösningen för varje ansluten skärm att rapporteras tillbaka. Om den bifogade externa skärmen är en tv, kommer upplösningen på TV-skärmen att rapporteras som 720p eller 1080p också.
Kommandot bör fungera i nästan alla versioner av Mac OS X, men observera att nuvarande versioner av Yosemite kommer att dumpa en del onödig utdata som förmodligen borde rensas upp med awk om du ska använda detta för skript. Den är fortfarande läsbar, men den är lite rörig.
Observera att du kan hoppa över grep-delen av kommandot om du vill, då rapporteras utökad visningsinformation som också kan vara till hjälp.
Tänk på att utgången visar den aktiva upplösningen, inte den maximala möjliga upplösningen på skärmen. Således kommer en Retina-skärm att visa vad som för närvarande används när det gäller skärmfastigheter, inte den maximala möjliga upplösningen på skärmen.