设为首页 收藏本站
查看: 1490|回复: 0

[经验分享] ubuntu16.04自动切换桌面壁纸

[复制链接]

尚未签到

发表于 2019-2-18 11:20:22 | 显示全部楼层 |阅读模式
一、描述
  让办公电脑桌面自动更换壁纸是一个很常见的需求,虽然不少这方面的小软件可以实现这个功能。事实上,在基于Gnome的桌面系统中,我们可以不需要借助任何第三方软件的帮助来让我们的桌面自动更换壁纸。本文的方法适用于基于Gnome的Linux桌面系统,换句话说,就是在Ubuntu和Fedora中都可以。
在我还在用windows 7系统时,当时选择一个主题背景(多张图组成)后,经常不经意间背景会换了,循环的切换桌面壁纸;由于windows上有很多流氓软件,容易中病毒,经常弹窗等各种问题,又由于我又不怎么用电脑玩游戏,主要是做用电脑来办公,因此果断换了自己的办公系统;其实windows用久了,难免想把ubuntu上的一些习惯带过来,例如一些快捷键(win +e ;win +L)等;这些可以自定义的,屏保,类MAC主题等,ubuntu上几乎一切均可自定义啊~ 正所所谓一切皆文件嘛~ 本文主要记录把桌面壁纸做成win7一样的自动切换;猜对 了,配置文件即可~ 真是方便!
前提你得下好喜欢的壁纸放在某目录下!
通过本文提供的脚本与方法生成;
配置

二、自动切换壁纸说明
  ubuntu 16.04 系统刚安装完,背景是很单调的,红底~由于我不喜欢这里就不贴图了,谁用谁知道~
因此我们需要自己去网上下载一些自己喜欢的壁纸,美女也好,动漫也好,游戏电影CG也好,自己喜欢就行。我这里是NASA的太空照片,我个人比较喜欢,当然是高清无码的。系统自带的壁纸都在/usr/share/backgrounds/目录下,我们要把下载的壁纸也移动到这个目录子目录

$ cd /home/san/图片/
$ mkdir /usr/share/backgrounds/dongyc -p
$ sudo mv *.jpg /usr/share/backgrounds/dongyc
  如图:


自动切换壁纸主要由两个XML文件控制
  前面介绍过,Gnome自带自动切换壁纸的功能,默认没有启用自动切换,而要使用这个功能,只需要编写和修改两个XML文件即可。首先,到/usr/share/backgrounds/目录中看一下,发现其中不仅只有图片,还有一个contest目录,如下图:

  在contest目录中,有一个系统自带的xenial.xml文件,这就是一个自动切换壁纸的配置文件。我们可以把该文件当做范本,来编写我们自己的配置文件。将该配置文件打开发现其格式非常简单,如下图:

  说明:
从该配置文件可以看出,根据壁纸所在的路径,设定好每一张图片先保留多久(秒),这里是300秒,然后切换到另外一张图片,切换过程经过几秒(duration段 5秒)。其内容非常简单,一就看懂的那种。但是要写一个这样的配置文件就有点难度了,特别是图片比较多的情况下,会累死人的,所以我们可以写一个Bash脚本来自动生成一个这样的配置文件。contest目录下的这个xml就是第一个xml文件,也是入口文件;先记下~Bash脚本,后面会讲到!

另外一个XML文件
  另一个重要的xml文件位于/usr/share/gnome-background-properties/目录下,如下图:

说明:
从图中可以看出 选中的部分是一个整体,其中就包含了前面所说的第一个入口xml文件~
只有在这里的XML配置文件中提到壁纸,才能在Ubuntu的系统设置界面中看到。所以等会儿我们生成了自动切换壁纸的XML配置文件后,只需要把那个配置文件的路径加到这里就行了。

生成入口xml文件脚本
  话不多说创建create_backup_xml.sh脚本生成入口xml文件即:/usr/share/backgrounds/contest/xenial-dongyc.xml 脚本内容如下:

#!/bin/bash
# version 2018-12-06 by san
files=`ls -U /usr/share/backgrounds/dongyc/|egrep -v contest`
last_file="empty"
echo ''
echo '  '
echo '    2015'
echo '    12'
echo '    06'
echo '    00'
echo '    00'
echo '    00'
echo ''
for current_file in $files
do
if [[ $last_file == 'empty' ]]
then
last_file=$current_file
echo  '    '
echo  '        300.0'
echo  "        /usr/share/backgrounds/dongyc/$last_file"
echo '    '
else
echo '    '
echo '         5.0'
echo "         /usr/share/backgrounds/dongyc/$last_file"
echo "         /usr/share/backgrounds/dongyc/$current_file"
echo '    '
echo '    '
echo '         300.0'
echo "         /usr/share/backgrounds/dongyc/$current_file"
echo '    '
last_file=$current_file
fi
done
echo ''

  执行脚本生成/usr/share/backgrounds/contest/xenial-dongyc.xml

$ ./create_backup_xml.sh >xenial-dongyc.xml
$ sudo cp xenial-dongyc.xml /usr/share/backgrounds/contest/
  如图:


修改第一个入口xml
  修改入口xml文件如下:

$ cd /usr/share/gnome-background-properties/
$ cat xenial-wallpapers.xml
  如图:

  至此xml文件配置自动切换壁纸部分完成,接下来就是应用~

修改自动切换壁纸主题
  在桌面上 右击 --> 更改桌面背景(B) --如图:

  接下来每过五分钟(300秒) 系统桌面就会自动切换啦,循环的,像win7系统~

补充:
  Ubuntu 16.04 使用的全新的LightDM作为桌面管理器,默认使用Unity Greeter作为登录管理器。
本文就介绍一些有限的美化方法。
常用个性化登录界面的办法:
在”/usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml”中直接修改各项值。
编辑好后保存退出。
刷新schemas
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
  如修改登录背景;
background = "你的图片路径"
默认值:
background = "/usr/share/backgrounds/warty-final-ubuntu.png"
  可以指定默认登录背景路径;




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-673916-1-1.html 上篇帖子: ubuntu/deepin下golang1.11.2安装配置与beego、bee安装 下篇帖子: ubuntu下使用pycharm调用Hanlp自然语言处理包
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表