linux自动更换壁纸脚本
来源:互联网 发布:pdms软件 编辑:程序博客网 时间:2024/05/01 22:34
使用注意事项:
1,脚本文件可执行
2,将switchbg.sh中的BGDIR设置为墙纸目录
3,在/etc/crontab中增加
*/5 * * * * test /home/test/switchbg.sh >/dev/null 2>&1
设置为每5分钟更换壁纸。
switchbg.sh
-------------------------------------------
#!/bin/bash
. ./discover_session_bus_address.sh
export DISPLAY=:0
confFile="/tmp/.switchbg.conf"
BGDIR="${HOME}/WallPaper"
filepath=${BGDIR}
find $filepath | grep -i -E ".jpg$|.png$|.jpeg$|.bmp$" > $confFile
cnt=`cat $confFile | wc -l`
while true
do
line=$(($RANDOM % $cnt + 1))
bgfile=$(head -n $line $confFile | tail -n 1)
bgfile="'file://$bgfile'"
bkfile=$(gsettings get org.gnome.desktop.background picture-uri)
# echo "old_wallpaper: $bkfile"
# echo "new_wallpaper: $bgfile"
if [ "$bkfile" != "$bgfile" ]
then
break
fi
done
gsettings set org.gnome.desktop.background picture-uri "$bgfile"
rm -f $confFile
-------------------------
discover_session_bus_address.sh
---------------------------------------------
#!/bin/bash
# Remember to run this script using the command "source ./filename.sh"
# Search these processes for the session variable
# (they are run as the current user and have the DBUS session variable set)
compatiblePrograms=( nautilus kdeinit kded4 pulseaudio trackerd )
# Attempt to get a program pid
for index in ${compatiblePrograms[@]}; do
PID=$(pidof -s ${index})
if [[ "${PID}" != "" ]]; then
break
fi
done
if [[ "${PID}" == "" ]]; then
echo "Could not detect active login session"
return 1
fi
QUERY_ENVIRON="$(tr '\0' '\n' < /proc/${PID}/environ | grep "DBUS_SESSION_BUS_ADDRESS" | cut -d "=" -f 2-)"
if [[ "${QUERY_ENVIRON}" != "" ]]; then
export DBUS_SESSION_BUS_ADDRESS="${QUERY_ENVIRON}"
echo "Connected to session:"
echo "DBUS_SESSION_BUS_ADDRESS=${DBUS_SESSION_BUS_ADDRESS}"
else
echo "Could not find dbus session ID in user environment."
return 1
fi
return 0
- linux自动更换壁纸脚本
- windows更换壁纸脚本
- 项目:自动更换壁纸
- ubuntu自动更换壁纸
- 自动更换壁纸vb代码
- service实现自动更换壁纸
- linux ip地址更换自动脚本
- 关于自动更换xp桌面的壁纸。
- Android开发之自动更换壁纸
- Ubuntu16.04自动更换必应壁纸
- SyncWall-带有多种强大功能的壁纸自动更换软件
- android 通过service 执行AlarmManager 自动更换壁纸
- 自动获取win10锁屏壁纸脚本
- 用python实现下载必应壁纸并自动更换壁纸的功能
- 如何更换wince壁纸?
- 如何更换wince壁纸?
- 简易的壁纸更换
- windows 主题壁纸更换
- SSL/TLS协议运行机制的概述
- MongoDB权威指南—读书笔记(Part Two)
- web前端开发规范文档
- Flask-migrate
- Java8 Stream 教程
- linux自动更换壁纸脚本
- Mybatis3源码分析(四):总结
- 终于支持 markdown 格式了
- iso-8859-1和utf-8有什么不同
- android数据库操作问题:could not allocate cursorwindow,errno:-12
- 【Puppet2D】实践1
- OpenGLES 相关 - 10天线性代数学习总结
- 1012. The Best Rank (25)
- 动态加载jarw文件