在 Linux 系统中,“屏幕大小”通常可以从两个维度来理解:
- 物理尺寸:显示器对角线的长度(如 24 英寸、15.6 英寸)。
- 分辨率/显示区域大小:屏幕像素的宽度和高度(如 1920×1080),或终端/图形界面的窗口大小。
由于你是在 Linux 环境下提问,通常更关心的是如何查看或设置分辨率、显示区域大小或终端窗口大小,以下是常见场景和方法:
查看当前分辨率(图形界面)
方法 1:使用 xrandr(适用于 X11 桌面环境)
xrandr
输出示例:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
1920x1080 60.00+ 59.97 50.00
1680x1050 59.95 59.88
...
current 1920 x 1080表示当前分辨率。- 表示当前激活的分辨率。
方法 2:使用 gnome-monitor-config 或系统设置(GNOME/KDE 等)
- 打开 设置(Settings) → 显示(Displays),可查看和修改分辨率。
方法 3:使用 xdpyinfo
xdpyinfo | grep dimensions
输出示例:
dimensions: 1920x1080 pixels (508x285 millimeters)
查看终端窗口大小
查看当前终端行列数
stty size
输出示例:
24 80
表示 24 行,80 列。
使用 tput
tput lines # 行数 tput cols # 列数
在脚本中获取终端大小
ROWS=$(tput lines)
COLS=$(tput cols)
echo "终端大小: ${ROWS}行 x ${COLS}列"
修改分辨率(命令行)
使用 xrandr 设置分辨率
xrandr --output eDP-1 --mode 1920x1080
注意:
eDP-1是你的显示器名称,可通过xrandr命令查看。
添加自定义分辨率(如果需要)
# 1. 生成模型式 cvt 1920 1080 60 # 2. 创建新模型式(输出类似:1920x1080_60.00) xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync # 3. 添加新模型式到输出设备 xrandr --addmode eDP-1 "1920x1080_60.00" # 4. 应用新分辨率 xrandr --output eDP-1 --mode "1920x1080_60.00"
查看物理屏幕尺寸(英寸)
Linux 本身不直接提供物理屏幕尺寸信息,但你可以通过以下方式间接获取:
方法 1:查看系统硬件信息
sudo lshw -C display
或
sudo dmidecode -t 2
注意:并非所有笔记本/显示器会在 DMI 信息中记录物理尺寸。
方法 2:通过显示器型号查询
# 查看显示器 EDID 信息 sudo apt install read-edid sudo get-edid | parse-edid
输出中可能包含显示器型号,然后你可以去官网查询该型号的物理尺寸。
方法 3:手动计算(已知分辨率和 DPI)
如果你知道屏幕的 DPI(每英寸点数),可以通过公式估算:
物理宽度(英寸)= 水平像素数 / DPI
物理高度(英寸)= 垂直像素数 / DPI
对角线尺寸(英寸)= √(宽² + 高²)
Wayland 环境(如 GNOME on Wayland)
Wayland 下 xrandr 可能无效,建议使用:
# 查看显示器信息 wlr-randr --version wlr-randr
或使用图形界面设置。
| 需求 | 命令/方法 |
|---|---|
| 查看当前分辨率 | xrandr、xdpyinfo |
| 查看终端大小 | stty size、tput lines/cols |
| 修改分辨率 | xrandr --output <name> --mode <res> |
| 查看物理尺寸 | 通过显示器型号查询,或 get-edid |
如果你有具体需求(如“如何设置双屏分辨率”或“如何获取终端窗口大小用于脚本”),可以进一步说明,我会提供更详细的指导。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/476320.html



