用于更改屏幕分辨率和运行程序的脚本?

时间:2011-04-27 09:07:13

标签: bash scripting ubuntu

我从未做过任何脚本编写(而且对Linux也是新手)。我想要的是用户可以点击的图标,它执行以下操作:
1.将屏幕分辨率更改为640x480 2.运行程序(让我们称之为/path/myprogram
3.程序终止时,将屏幕分辨率更改回1024x768。

显然有一种叫做“xrandr”的东西可以做到这一点,但我不确定它是如何工作的。此外,屏幕现在设置为“颠倒”,并且应该始终保持这种状态(我不知道这对于此脚本是否重要)。

另外,我注意到在Ubuntu中,当点击脚本时,它会显示一个提示:“在终端中运行”,“显示”,“运行”等。有没有办法让它默认为“运行“以便根本不显示此提示?

非常感谢。

[[编辑]]

我使用xrandr编写了一个脚本,它几乎可以工作。它的行为与转到首选项的行为不同 - >显示器。当我使用脚本更改为640x480时,屏幕右侧的一部分会被切断。此外,由于某种原因,它将刷新率更改为73Hz而不是60Hz(如果我尝试将“刷新率”从“首选项”更改为60Hz,则图像会变得有点失真)。

我尝试使用xrandr --prop来弄清楚发生了什么,以及常规偏好设置之间的唯一区别 - >监控方式和xrandr方式似乎是这一行:

   640x480        72.8     75.0     60.0* 
   640x480        72.8*    75.0     60.0  

该部分的标题是(我认为这是标题?):

VGA1 connected 640x480+0+0 inverted (normal left inverted right x axis y axis) 0mm x 0mm

数字似乎与刷新率相对应,但这并不能解释为什么图像会被切断/扭曲。

所以基本上,我不知道发生了什么,也不知道如何修复它。我需要将分辨率更改设置为与首选项相同 - >显示器

另外,就桌面图标而言,事实证明Ubuntu有一个叫做“启动器”的东西,效果很好。还是非常感谢。 :)

1 个答案:

答案 0 :(得分:8)

调整屏幕大小:

xrandr --size 640x480

桌面图标:

[Desktop Entry]
Encoding=UTF-8
Name=My App
Comment=What the app does
Exec=programname
Icon=??
Terminal=false
Type=Application
StartupNotify=true
Categories=??

并将其放入~/.local/share/applications/programname.desktop/usr/share/applications/programname.desktop

有关详细信息,请参阅Desktop Entry SpecificationDesktop Entry Files