欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ubuntu 14.04自动更换壁纸

程序员文章站 2024-03-23 08:31:28
...

Ubuntu 14.04自动更换壁纸

最近用ubuntu14.04,想添加一些自己拍的图片作为壁纸,并且让它自动更换。

查网上教程,知道其实背景图片是在文件夹/usr/share/backgrounds下,在contest(ubuntukylin)文件夹下有一个trusty.xml文件,系统自动读取此文件进行背景切换。
文件内容是这样的:
Ubuntu 14.04自动更换壁纸
可以看到如果添加很多图片,手动写这个文件还是蛮烦的。最近在学python,就自己用python写了一下配置文件。

代码如下:

import string, os

direct = "/home/zhaoxin/图片/壁纸"

duration = 600.0
trans_duar = 2.0

with open('trusty.xml', 'w') as file:
    file.write("<background>\n")
    file.write("\t<starttime>\n")
    file.write("\t\t<year>2009</year>\n")
    file.write("\t\t<month>08</month>\n")
    file.write("\t\t<day>04</day>\n")
    file.write("\t\t<hour>00</hour>\n")
    file.write("\t\t<minute>00</minute>\n")
    file.write("\t\t<second>00</second>\n")
    file.write("\t</starttime>\n")

    filenames = os.listdir(direct)

    i = 0
    while 1:
        file.write("\t<static>\n")
        file.write("\t\t<duration>" + str(duration) + "</duration>\n")
        file.write("\t\t<file>" + direct + os.sep + filenames[i] + "</file>\n")
        file.write("\t</static>\n")
        file.write("\t<transition>\n")
        file.write("\t\t<duration>" + str(trans_duar) + "</duration>\n")
        file.write("\t\t<from>"  + direct + os.sep + filenames[i] + "</from>\n")
        file.write("\t\t<to>" + direct + os.sep + filenames[i + 1] + "</to>\n")
        file.write("\t</transition>\n\n")

        if i >= filenames.__len__() - 2:
            break
        i += 1

    file.write("</background>")

其中,direct是你存放图片的目录,duration是每张图片显示时间,trans_duar是切换显示时间。

写好了这个文件,切换到ubuntukylin文件下,利用指令:sudo gedit trusty.xml,修改文件,将生成的文件内容粘贴进行即可。