Lệnh Ubuntu linux để tìm kích thước màn hình máy tính xách tay là gì? Tôi muốn biết bằng inch nếu có thể.
Cảm ơn
Lệnh Ubuntu linux để tìm kích thước màn hình máy tính xách tay là gì? Tôi muốn biết bằng inch nếu có thể.
Cảm ơn
Câu trả lời:
Một tùy chọn khác, sử dụng xrandr
, là lệnh:
xrandr | grep ' connected'
Đầu ra:
DVI-I-1 connected primary 1680x1050+0+0 (normal left inverted right x axis y axis) 473mm x 296mm
VGA-1 connected 1280x1024+1680+0 (normal left inverted right x axis y axis) 376mm x 301mm
(nhớ không gian trước connected
, disconnected
sẽ được bao gồm)
xdpyinfo
vàxrandr
xrandr
liệt kê các màn hình riêng biệt (trong trường hợp có nhiều màn hình), hãy xdpyinfo
xuất một bộ kích thước duy nhất cho tất cả các màn hình cùng nhau ("kích thước màn hình" thay vì kích thước màn hình)Như @agold nhận thấy, có (một) sự khác biệt giữa hai thứ, dường như quá lớn để trở thành một sự khác biệt làm tròn đơn giản:
xrandr: 473mm x 296mm
xdpyinfo: 445x278
Có vẻ như liên quan đến một lỗi trong xdpyinfo
. Xem thêm tại đây .
Sử dụng tập lệnh nhỏ bên dưới; nó xuất ra kích thước màn hình của bạn tính bằng inch; chiều rộng / chiều cao / đường chéo (inch)
#!/usr/bin/env python3
import subprocess
# change the round factor if you like
r = 1
screens = [l.split()[-3:] for l in subprocess.check_output(
["xrandr"]).decode("utf-8").strip().splitlines() if " connected" in l]
for s in screens:
w = float(s[0].replace("mm", "")); h = float(s[2].replace("mm", "")); d = ((w**2)+(h**2))**(0.5)
print([round(n/25.4, r) for n in [w, h, d]])
Sao chép tập lệnh vào một tập tin trống, lưu nó dưới dạng get_dimensions.py
, chạy nó bằng lệnh:
python3 /path/to/get_dimensions.py
Đầu ra trên hai màn hình của tôi:
width - height - diagonal (inches)
[18.6, 11.7, 22.0]
[14.8, 11.9, 19.0]
Phiên bản ưa thích của cùng một kịch bản (với một vài cải tiến và đầu ra đẹp hơn), trông giống như:
Screen width height diagonal
--------------------------------
DVI-I-1 18.6 11.7 22.0
VGA-1 14.8 11.9 19.0
#!/usr/bin/env python3
import subprocess
# change the round factor if you like
r = 1
screens = [l.split() for l in subprocess.check_output(
["xrandr"]).decode("utf-8").strip().splitlines() if " connected" in l]
scr_data = []
for s in screens:
try:
scr_data.append((
s[0],
float(s[-3].replace("mm", "")),
float(s[-1].replace("mm", ""))
))
except ValueError:
pass
print(("\t").join(["Screen", "width", "height", "diagonal\n"+32*"-"]))
for s in scr_data:
scr = s[0]; w = s[1]/25.4; h = s[2]/25.4; d = ((w**2)+(h**2))**(0.5)
print(("\t").join([scr]+[str(round(n, 1)) for n in [w, h, d]]))
"Loại" theo yêu cầu (trong một bình luận), một phiên bản hiện đại hóa / nâng cao / cải tiến hơn (không gọi hệ thống, không phân tích cú pháp nhưng sử dụng phiên bản Gdk.Display), thực hiện khá giống nhau:
#!/usr/bin/env python3
import gi
gi.require_version('Gdk', '3.0')
from gi.repository import Gdk
dsp = Gdk.Display.get_default()
n_mons = dsp.get_n_monitors()
print(("\t").join(["Screen", "width", "height", "diagonal\n"+32*"-"]))
for i in range(n_mons):
mon = dsp.get_monitor(i)
mon_name = mon.get_model()
w = mon.get_width_mm()/25.4
h = mon.get_height_mm()/25.4
d = ((w**2)+(h**2))**(0.5)
print(("\t").join([mon_name]+[str(round(n, 1)) for n in [w, h, d]]))
Đầu ra:
Screen width height diagonal
--------------------------------
eDP-1 20.0 11.3 23.0
HDMI-1 18.6 11.7 22.0
Tôi sẽ để lại câu trả lời ban đầu, vì có vẻ không phù hợp để xóa câu trả lời sau một thời gian dài như vậy, điều đó đã tạo ra số phiếu hiện có.
xdpyinfo
cho tôi "474x303 milimét" và xrandr
"473mm x 296mm".
xdpyinfo
kết quả đầu ra của máy tính để bàn kích thước (cả hai màn hình), chứ không phải kích thước của màn hình!
xdpyinfo
: bug.launchpad.net/ubfox/+source/xorg-server/+orms/201491 Mặc dù báo cáo khá cũ nhưng tôi không thấy nó được sửa. Xem thêm: bbs.archlinux.org/viewtopic.php?id=204823
Chỉ trong trường hợp bạn muốn có một câu trả lời tổng quát hơn, bạn có thể cắt nút thắt và sử dụng thước đo vật lý không táo bạo cho điều đó. Theo wiki này , "kích thước của màn hình thường được mô tả bằng chiều dài đường chéo của nó ":
Nếu bạn có một thước đo chỉ hiển thị centimet , bạn có thể sử dụng chuyển đổi đơn giản :
1 cm = 0.393701 in
(or 2.54 cm = 1 in)
Vì vậy, nếu thước của bạn đo 30 cm , màn hình của bạn là 11.811 inch. Bạn cũng có thể sử dụng google với một truy vấn của biểu mẫu 30 cm to in
.
Tín dụng hình ảnh: https://en.wikipedia.org/wiki/File:Display_size_measurements.png
Xdpyinfo
là một tiện ích để hiển thị thông tin về máy chủ X. Nó được sử dụng để kiểm tra khả năng của một máy chủ, các giá trị được xác định trước cho các tham số khác nhau được sử dụng trong giao tiếp giữa máy khách và máy chủ, và các loại màn hình và hình ảnh khác nhau có sẵn.
Lệnh để có được kích thước màn hình là:
xdpyinfo | grep dimensions
Kết quả
dimensions: 1366x768 pixels (361x203 millimeters)
xdpyinfo
báo cáo kích thước và xrandr
.
xrandr
: 473mm, trong khi xdpyinfo
báo cáo cách quá ngắn ( 445mm
). Câu hỏi này hóa ra thú vị hơn thì OP giả sử tôi đoán :)
Đây là điều mà tôi cũng đang phải vật lộn (khi tôi muốn tự nâng cấp lên một màn hình mới và muốn biết kích thước màn hình cũ của tôi là bao nhiêu), vì vậy tôi đã viết một kịch bản shell tìm kích thước màn hình cho bạn.
Tôi đã sử dụng xdpyinfo
từ câu trả lời đầu tiên để có được kích thước màn hình và được xây dựng trước nó. Kịch bản về cơ bản tính toán đường chéo từ kích thước màn hình, chuyển đổi từ milimet sang inch và hiển thị kết quả.
URL kho lưu trữ: https://github.com/abhishekvp/WhatsMyScreenSize
Hi vọng điêu nay co ich!