2025年3月22日 星期六 甲辰(龙)年 月廿一 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 系统应用 > Linux

Linux 命令行调节屏幕到任意分辨率的 Python 脚本

时间:11-14来源:作者:点击数:56

一台19寸显示器插在本本VGA插口上, 结果在KDE的分辨率管理界面上发现只能最高选择分辨率到1024×768, 甚是不爽! 于是…写了一个脚本, 以后就可以一步做到啦!

此外: 运行此脚本后, KDE的分辨率管理列表中也会出现运行此脚本的时候指定的分辨率哟!(即使是显示器不支持的)

当然啦, 显卡不支持的分辨率是不会设置成功的…

实现的功能比较简单, 但是很方便, 希望对你也有用~

使用方法:

  • resolution <设备名> <分辨率> [刷新率]

使用示例:

  • resolution VGA1 1366x768 60
  • resolution LVDS1 1280x800

下面…就是脚本啦!

  • #!/usr/bin/env python2
  • import os, sys, subprocess
  • if len(sys.argv) < 3:
  • print "Usage: resolution [refreshrate]"
  • sys.exit(1)
  • device = sys.argv[1]
  • resolution = sys.argv[2]
  • x, y = resolution.split('x')
  • try:
  • refreshrate = sys.argv[3]
  • p = subprocess.Popen(['cvt', x, y, refreshrate], stdout = subprocess.PIPE)
  • refreshrate = "_" + refreshrate
  • except:
  • refreshrate = ""
  • p = subprocess.Popen(['cvt', x, y], stdout = subprocess.PIPE)
  • output = p.communicate()[0]
  • newline = output.split('\n')[1].split()
  • #modename = newline[1].replace('"', '')
  • modename = resolution + refreshrate
  • specs = newline[2:]
  • p = subprocess.Popen(['xrandr', '--newmode', modename] + specs)
  • output = p.communicate()
  • p = subprocess.Popen(['xrandr', '--addmode', device, modename])
  • output = p.communicate()
  • print " ".join(newline)
  • p = subprocess.Popen(['xrandr', '--output', device, '--mode', modename])
  • output = p.communicate()

参考资料: https://wiki.ubuntu.com/X/Config/Resolution

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门