如何定期更改桌面主题

是否有可能在每小时更改桌面主题

在这里,我给你写了一些使用gconf进行随机设置的脚本。

ChangeGTKTheme

#!/bin/bash if [ "$1" == "random" ]; then files=(~/.themes/*) base=$(basename "${files[RANDOM % ${#files[@]}]}") gconftool-2 --type=string -s /desktop/gnome/interface/gtk_theme $base else if [ "$1" == "" ]; then echo "Usage: $0 GTK_theme_name" echo "or $0 random / for a random pick" else #GTK theme gconftool-2 --type=string -s /desktop/gnome/interface/gtk_theme $1 fi fi 

换背景

 #!/bin/bash if [ "$1" == "random" ]; then files=(~/.backgrounds/*) gconftool-2 -t str --set /desktop/gnome/background/picture_filename "${files[RANDOM % ${#files[@]}]}" else if [ "$1" == "" ]; then echo "Usage: $0 path/to/background" echo "or $0 random / for a random pick" else #Wallpaper gconftool-2 -t str --set /desktop/gnome/background/picture_filename $1 fi fi 

ChangeIcons

 #!/bin/bash if [ "$1" == "random" ]; then files=(~/.icons/*) base=$(basename "${files[RANDOM % ${#files[@]}]}") gconftool-2 --type=string -s /desktop/gnome/interface/icon_theme $base else if [ "$1" == "" ]; then echo "Usage: $0 icon_theme_name" echo "or $0 random / for a random pick" else #Icons gconftool-2 --type=string -s /desktop/gnome/interface/icon_theme $1 fi fi 

ChangeMetacityThemes

 #!/bin/bash if [ "$1" == "random" ]; then files=(~/.themes/*) base=$(basename "${files[RANDOM % ${#files[@]}]}") gconftool-2 --type=string -s /apps/metacity/general/theme $base else if [ "$1" == "" ]; then echo "Usage: $0 metacity_theme_name" echo "or $0 random / for a random pick" else #Metacity gconftool-2 --type=string -s /apps/metacity/general/theme $1 fi fi 

希望这些能帮到你。

您可以使用cron完成所有操作,而不是编写bash脚本。 如果你不是bash专家我猜你也不是cron专家,所以从Ubuntu软件中心下载Gnome-Schedule。 这基本上是与cron一起工作的GUI。 然后只需设置一个任务,每小时运行一次,包括以下命令(每个命令需要一个单独的任务,但它们可以同时运行。

GTK主题:

 gconftool-2 --type=string -s /desktop/gnome/interface/gtk_theme PUT_THE_THEME_NAME_HERE 

Metacity的:

 gconftool-2 --type=string -s /apps/metacity/general/theme PUT_THE_THEME_NAME_HERE 

图标:

 gconftool-2 --type=string -s /desktop/gnome/interface/icon_theme PUT_THE_ICON_THEME_NAME_HERE 

墙纸:

 gconftool-2 -t str --set /desktop/gnome/background/picture_filename "PUT_THE_PATH_TO_THE_WALLPAPER_IMAGE_HERE" 

重要说明每次希望主题更改时,您需要创建单独的任务,并且对于使用此过程将要更改的每个不同主题,您需要创建一个单独的任务。 因此,您将创建一个每天1:00运行的任务,将主题更改为Theme1。 每天运行的另一个进程,每天运行以将主题更改为Theme2等。执行此操作的最佳方法是编写脚本,但这将是一个简单的解决方法。