`

Ubuntu之下如何开启壁纸自动切换

阅读更多
  1. 选择一个图片文件夹,将需要用到的壁纸放在该文件下

  2. 在该文件夹下运行如下脚本:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # Name: slidexml.py
    # Author: EthanZ6174
    # Email: <heracles.621@gmail.com>
    # Site: http://www.noslog.com
    # Licence: GPLv3
    # Version: 091127
    
    import glob, os
    import shutil
    import time
    
    
    curdir = os.getcwd()
    os.chdir(curdir)
    currentFilelist = glob.glob('*.*')
    currentImageFiles = glob.glob('*.jpg')
    
    currentTime = time.localtime()
    length = len(currentImageFiles)
    
    for i in currentFilelist:
     if i == 'backgroundslide.xml':
      os.remove(i)
    
    f = file('backgroundslide.xml', 'w')
    
    f.write('<background>\n')
    f.write('\t<starttime>\n')
    f.write('\t\t<year>' + str(currentTime.tm_year) + '</year>\n')
    f.write('\t\t<month>' + str(currentTime.tm_mon) + '</month>\n')
    f.write('\t\t<day>' + str(currentTime.tm_mday) + '</day>\n')
    f.write('\t\t<hour>' + str(currentTime.tm_hour) + '</hour>\n')
    f.write('\t\t<minute>' + str(currentTime.tm_min) + '</minute>\n')
    f.write('\t\t<second>' + str(currentTime.tm_sec) + '</second>\n')
    f.write('\t</starttime>\n')
    f.write('<!--This animation will start at the time it created-->\n')
    
    for i in currentImageFiles:
     length = length - 1
     print length
     #print curdir
     #print currentImageFiles[1]
     f.write('\t<static>\n')
     f.write('\t\t<duration>595.0</duration>\n')
     f.write('\t\t<file>' + curdir + '/' + currentImageFiles[length] +'</file>\n')
     f.write('\t</static>\n')
     f.write('\t<transition>\n')
     f.write('\t\t<duration>5.0</duration>\n')
     f.write('\t\t<from>' + curdir + '/' + currentImageFiles[length] + '</from>\n')
     if length >= 1:
      f.write('\t\t<to>' + curdir + '/' + currentImageFiles[length-1] + '</to>\n')
     if length <1:
      f.write('\t\t<to>' + curdir + '/' + currentImageFiles[len(currentImageFiles)-1] + '</to>\n')
     f.write('\t</transition>\n')
    
    f.write('</background>\n')
    f.close()

     3. 将生成的background.xml加入桌面背景选择中

附录:

<background> 
  <starttime>   <!-- starttime标签设置动画(幻灯片)开始的时间,可根据自己制作的时间设定,这个应该不影响实际要实现的功能 -->
    <year>2009</year> 
    <month>08</month> 
    <day>04</day> 
    <hour>00</hour> 
    <minute>00</minute> 
    <second>00</second> 
  </starttime> 
<!-- This animation will start at midnight. -->   <!-- "animation"动画的意思 -->
  <static>  <!-- "static"静态的意思 -->
    <duration>1800.0</duration>  <!-- duration标签设置持续的时间,以秒为单位。--> 
    <file>/usr/share/backgrounds/cosmos/cloud.jpg</file> <!-- file标签指定壁纸存放的路径 -->
  </static> 
  <transition> <!--"transition"切换的意思 -->
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/cloud.jpg</from><!--from ... to从壁纸A切换到壁纸B。--> 
    <to>/usr/share/backgrounds/cosmos/comet.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/comet.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/comet.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/earth-horizon.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/earth-horizon.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/earth-horizon.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/helix-nebula.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/helix-nebula.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/helix-nebula.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/jupiter.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/jupiter.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/jupiter.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/sombrero.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/sombrero.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/sombrero.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/whirlpool.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/whirlpool.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/whirlpool.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/cloud.jpg</to> 
  </transition> 
</background> 
分享到:
评论

相关推荐

    ubuntu自动换壁纸

    默认情况下,Ubuntu允许用户手动更改壁纸,但并未提供自动切换的功能。 要实现自动换壁纸,我们需要编写一个脚本,这个脚本可以是用Bash(Linux的Shell脚本语言)编写的。通过定时任务服务cron,我们可以让脚本按照...

    ubuntu下自动挂载windows分区

    ### Ubuntu下自动挂载Windows分区的方法详解 #### 一、背景介绍 Ubuntu 是一款非常流行的开源操作系统,基于 Linux 内核。很多用户选择在一台计算机上同时安装 Ubuntu 和 Windows,以便于根据不同的需求灵活切换...

    ubuntu下安装杀毒软件eset nod32

    ### Ubuntu 下安装 ESET NOD32 杀毒软件详细指南 #### 一、引言 随着 Linux 系统在服务器领域的广泛应用,安全问题日益受到重视。Ubuntu 作为一款流行的 Linux 发行版,在个人计算机及服务器领域都有广泛的应用场景...

    ubuntu下安装QQ

    ### 在Ubuntu下安装QQ的详细步骤与注意事项 在日常工作中,即时通讯软件是不可或缺的工具之一,尤其是在跨平台的工作环境中,能够保持通讯的畅通尤为重要。对于Linux用户而言,Ubuntu作为最受欢迎的发行版之一,...

    ubuntu下android源码下载

    在深入探讨如何在Ubuntu下下载Android源码之前,我们首先需要理解几个关键概念:Ubuntu、Android源码以及必要的软件工具。Ubuntu是一种基于Linux的操作系统,以其稳定性和安全性著称,广泛用于开发环境。Android源码...

    Ubuntu实验一之安装和简介

    - **发展**:随着时间的推移,Ubuntu不仅成为最受欢迎的Linux发行版之一,还衍生出了多个子项目,如Kubuntu、Xubuntu等。 - **社区贡献**:Ubuntu的成功很大程度上得益于其强大的社区支持。开发者、用户和爱好者...

    VMware下安装Ubuntu 11.10 全程图解

    ### VMware 下安装 Ubuntu 11.10 的关键步骤及注意事项 #### 一、了解 VMware 和 Ubuntu 11.10 - **VMware:** 是一款功能强大的桌面虚拟化解决方案,能够让用户在单一的桌面上同时运行不同的操作系统,并且能够在...

    ubuntu系统更改ip

    Ubuntu系统默认使用动态主机配置协议(DHCP)自动分配IP地址,但在某些情况下需要手动配置静态IP地址。以下是更改网卡为静态IP地址的步骤: 1. 打开终端,使用文本编辑器打开网络接口配置文件。可以使用命令行编辑器...

    Ubuntu The Complete Reference

    - **命令行工具**:Ubuntu 的强大之处在于其命令行工具,例如 bash shell 和各种脚本语言,这为自动化任务提供了便利。 - **脚本编写**:通过学习 Bash 脚本编写,可以创建复杂的自动化脚本来简化日常任务。 - **...

    ubuntu精简版 windos解压即用

    对于需要在两种操作系统之间切换,或者想要在Windows环境下测试Ubuntu软件的用户来说,这是一种高效且实用的解决方案。同时,由于其精简特性,对硬件资源的需求也相对较低,更适合老旧或低配电脑使用。

    在ubuntu12.04下编译内核

    ### 在Ubuntu 12.04下编译Linux内核的知识点详解 #### 前言 编译Linux内核是一项复杂但具有高度定制性的任务,尤其对于希望深入理解操作系统底层工作原理或需要针对特定硬件进行优化的用户来说至关重要。本文将基于...

    Ubuntu知识宝典

    2. **使用Live CD/DVD**: Live CD/DVD允许用户在不安装的情况下试用Ubuntu系统,这对于测试兼容性和体验Ubuntu非常有用。 3. **安装过程**: 安装过程较为直观,包括选择语言、键盘布局、时区等基本设置,以及磁盘...

    ubuntu 20.04.1 离线vim资源包

    Ubuntu 20.04.1 离线vim资源包提供了在没有网络连接的情况下安装和升级Vim的便利。这个资源包包含了两个关键的deb格式安装文件:`vim-runtime_8.1.2269-1ubuntu5.7_all.deb` 和 `vim_8.1.2269-1ubuntu5.7_amd64.deb`...

    Ubuntu下配置Tomcat服务器以及设置自动启动的方法

    配置Tomcat服务器在Ubuntu环境下是Java Web开发者必备的技能之一,本文将详细介绍如何在Ubuntu系统上安装、配置Tomcat,并设置其自动启动,以确保服务的稳定性和可靠性。 首先,我们需要安装Java Development Kit ...

    vmware下ubuntu与windows建立共享目录

    - 在Ubuntu中安装vmtools后,会在/mnt/目录下自动生成一个名为/hgfs/的子目录,用于存放共享文件夹。 3. **安装open-vm-dkms包:** - 使用sudo apt-get install open-vm-dkms命令安装该软件包。这个包包含了必要...

    Ubuntu实验二之简单命令

    ### Ubuntu实验二之简单命令详解 #### 实验一:命令行终端 在Ubuntu Linux系统中,虽然图形用户界面(GUI)提供了直观的操作体验,但对于高效管理和深入操作,掌握命令行界面(CLI)至关重要。本实验旨在熟悉...

    Ubuntu下安装spark.pdf

    使用命令`cd spark-1.3.0-bin-hadoop1`切换到安装目录下。 6. 启动Spark交互式shell:在安装目录的shell目录下,使用命令`./bin/spark-shell`启动Spark的交互式shell。这是一个REPL环境,用户可以通过它来交互式地...

    ubuntu16.04下的Lxc介绍

    在Ubuntu 16.04环境下,LXC(Linux Containers)是一项重要的轻量级虚拟化技术。LXC 与传统的虚拟化技术(例如 Qemu 或 VMware)不同,因为它们不模拟硬件,而是让容器共享宿主机的操作系统。这使得容器轻量、启动...

    Ubuntu RTMP视频服务器搭建教程

    【搭建Ubuntu RTMP视频服务器详解】 在IT行业中,实时传输协议(RTMP)常用于视频直播和点播服务,尤其在编码器与服务器之间进行数据传输时。本教程将指导你如何在Ubuntu操作系统上搭建一个简单的RTMP服务器,以便...

    ubuntu下安装ruby on rails

    ### Ubuntu 下 Ruby on Rails 的安装与配置 #### 一、Ruby on Rails 的安装步骤 **1.1 系统环境准备** 确保您的 Ubuntu 系统已更新至最新状态。这一步很重要,因为新版本通常会修复旧版本中存在的问题,包括安全...

Global site tag (gtag.js) - Google Analytics