วิธีรับความละเอียดหน้าจอปัจจุบันจาก Command Line ใน Mac OS X
โดยทั่วไปแล้ว ผู้ใช้ Mac จะดึงข้อมูลความละเอียดหน้าจอของจอแสดงผลที่เชื่อมต่อผ่านแผงการตั้งค่าระบบการแสดงผลใน OS X แน่นอนว่าวิธีการดังกล่าวไม่มีอะไรผิดปกติ เป็นวิธีที่ง่ายและรวดเร็ว แต่เนื่องจากใช้ส่วนติดต่อแบบกราฟิกของ OS X จึงไม่จำเป็นสำหรับการเขียนสคริปต์ วัตถุประสงค์หรือการจัดการระยะไกลผ่านการเข้าสู่ระบบระยะไกลและการเชื่อมต่อ SSHในสถานการณ์เหล่านี้และอื่นๆ อีกมากมาย คุณอาจต้องการดึงความละเอียดหน้าจอปัจจุบันของจอแสดงผลจากบรรทัดคำสั่งใน Mac OS X
คุณสามารถรับความละเอียดหน้าจอที่แม่นยำด้วยความช่วยเหลือของคำสั่ง system_profiler ซึ่งจะดึงข้อมูลระบบโดยละเอียดเป็นเวอร์ชันบรรทัดคำสั่งของยูทิลิตี้ Apple System Profiler ซึ่งรวมมาอย่างยาวนานกับ OS X ไวยากรณ์ที่จะใช้ เป็นเรื่องง่าย และคุณอาจต้องการล้างผลลัพธ์ด้วย grep เพื่อแสดงความละเอียด
คำสั่ง system_profiler สำหรับการขอความละเอียดของจอแสดงผลที่เชื่อมต่อมีดังต่อไปนี้ ตามปกติด้วยไวยากรณ์ของบรรทัดคำสั่ง ต้องแน่ใจว่าคำสั่งอยู่ในบรรทัดเดียว:
system_profiler SPDisplaysDataType |grep Resolution
ไม่จำเป็นต้องใช้ sudo แต่คุณสามารถใส่คำนำหน้าคำสั่งได้หากต้องการด้วยเหตุผลบางอย่าง
Output สามารถอ่านได้ง่ายและควรมีลักษณะดังต่อไปนี้:
$ system_profiler SPDisplaysDataType |grep Resolution ความละเอียด: 1920 x 1080
หากคุณใช้จอแสดงผลหลายจอกับ Mac ความละเอียดสำหรับแต่ละหน้าจอที่เชื่อมต่อจะถูกรายงานกลับ หากจอแสดงผลภายนอกที่เชื่อมต่อเป็นโทรทัศน์ ความละเอียดของหน้าจอทีวีจะถูกรายงานเป็น 720p หรือ 1080p ด้วย
คำสั่งควรใช้งานได้กับ Mac OS X ทุกเวอร์ชัน แต่โปรดทราบว่า Yosemite เวอร์ชันปัจจุบันจะดัมพ์เอาต์พุตที่ไม่จำเป็นบางส่วน ซึ่งควรล้างด้วย awk หากคุณจะใช้คำสั่งนี้ สำหรับการเขียนสคริปต์ ยังอ่านได้ แต่รกไปหน่อย
โปรดทราบว่าคุณสามารถข้ามส่วน grep ของคำสั่งได้หากต้องการ โดยรายงานกลับรายละเอียดการแสดงผลแบบขยายซึ่งจะมีประโยชน์เช่นกัน
โปรดทราบว่าเอาต์พุตจะแสดงความละเอียดที่ใช้งานอยู่ ไม่ใช่ความละเอียดสูงสุดที่เป็นไปได้บนจอแสดงผล ดังนั้น จอภาพ Retina จะแสดงสิ่งที่กำลังใช้อยู่ในแง่ของพื้นที่หน้าจอ ไม่ใช่ความละเอียดสูงสุดที่เป็นไปได้ของจอภาพ