# 堆代码 duidaima.com #!/usr/bin/perl -w use strict; my $dconf_line = `dconf read /com/ubuntu/user-interface/scale-factor`; my ($scale_factor) = $dconf_line =~ m/DP1\': (\d+)/; if ($scale_factor) { print STDOUT "Current value of scale_factor: $scale_factor ...\n\n"; } else { die "Error: cannot find scale_factor value in dconf\n(value of /com/ubuntu/user-interface/scale-factor was $dconf_line\n\n"; } open(my $fh, "-|", "dconf watch /com/ubuntu/user-interface/scale-factor"); while (<$fh>) { if (m/DP1\': (?!$scale_factor)/) { `dconf write /com/ubuntu/user-interface/scale-factor "{'DP1': $scale_factor}"`; my $date = `date`; print STDOUT "$date -- scaling factor adjusted\n\n"; } }需要注意的是上面那个DP1是显示接口名称,不同电脑可能不一样,有些可能是DP-1,建议先在命令行里面执行命令获取一下,然后手动修改一下:
jwang@jun:~$ dconf read /com/ubuntu/user-interface/scale-factor {'DP1': 15}Ubuntu系统自带perl脚本运行环境,直接把这段代码保存为文件,chmod+x 添加执行权限,然后设置成开机启动就行。
开机启动可以把命令写到/etc/rc.local里面,或者我觉得最简单的方式就是在Ubuntu里面有一个名称叫作Startup Applications的应用,中文应该是叫开机启动,在这里添加一个就行。