Как периодически менять тему рабочего стола

Можно ли менять тему рабочего стола в каждый час?

5
задан 22 November 2012 в 01:53

2 ответа

Вместо написания bash-скрипта вы можете делать все это с помощью cron. И если вы не эксперт по bash, я думаю, что вы не являетесь экспертом по cron, поэтому загрузите Gnome-Schedule из Ubuntu Software Center. Это в основном графический интерфейс для работы с cron. Затем просто настройте задачу для запуска каждый час, которая включает в себя следующие команды (вам потребуется отдельная задача для каждой команды, но они могут выполняться одновременно.

Тема GTK:

gconftool-2 --type=string -s /desktop/gnome/interface/gtk_theme PUT_THE_THEME_NAME_HERE
[ 117] 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, чтобы сменить тему на Theme 1. Еще один процесс, который запускается каждый день, каждый день работает, чтобы сменить тему на Theme2 и т. д. лучший способ сделать это - написать скрипт, но это будет простой обходной путь.

0
ответ дан 22 November 2012 в 01:53

здесь я записал Вам некоторые сценарии, чтобы сделать случайные настройки с помощью 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

ChangeBackground

#!/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

Надеюсь, что они помогают Вам.

2
ответ дан 22 November 2012 в 01:53

Другие вопросы по тегам:

Похожие вопросы: