My favorites | Sign in
Project Home Downloads Wiki Issues Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# ----------------------------------------------------------------------------
# Muda aleatoriamente o background do GNOME.
# A opção -l faz o script entrar em loop.
# ATENÇÃO: o caminho deve conter a última / para que funcione:
# /wallpaper/ <- funciona
# /wallpaper <- não funciona
#
# Uso: zzrandbackground -l <caminho_wallpapers> <segundo>
# Ex.: zzrandbackground /media/wallpaper/
# zzrandbackground -l /media/wallpaper/ 5
#
# Autor: Marcell S. Martini <marcellmartini (a) gmail com>
# Desde: 2008-12-12
# Versão: 1
# Licença: GPLv2
# Requisitos: zzshuffle gconftool
# ----------------------------------------------------------------------------
zzrandbackground ()
{

zzzz -h randbackground "$1" && return

local caminho tempo papeisdeparede background
local opcao caminho segundos loop

# Tratando os parametros
# foi passado -l
if [ "$1" = "-l" ];then

# Tem todos os parametros, caso negativo
# mostra o uso da funcao
if [ $# != "3" ]; then
zztool uso randbackground
return 1
fi

# Ok é loop
loop=1

# O caminho é valido, caso negativo
# mostra o uso da funcao
if test -d $2; then
caminho=$2
else
zztool uso randbackground
return 1
fi

# A quantidade de segundos é inteira
# caso negativo mostra o uso da funcao
if zztool testa_numero $3; then
segundos=$3
else
zztool uso randbackground
return 1
fi
else
# Caso nao seja passado o -l, só tem o camiho
# caso negativo mostra o uso da funcao
if [ $# != "1" ]; then
zztool uso randbackground
return 1
fi

# O caminho é valido, caso negativo
# mostra o uso da funcao
if test -d $2; then
caminho=$1
else
zztool uso randbackground
return 1
fi
fi

# Ok parametros tratados, vamos pegar
# as imagens dentro do "$caminho"
papeisdeparede=$(
find -L $caminho -type f -exec file {} \; |
grep -i image |
cut -d: -f1
)

# Agora a execução
# Foi passado -l, então entra em loop infinito
if [ "$loop" ];then
while test "1"
do
background=$( echo "$papeisdeparede" |
zzshuffle |
head -1
)
gconftool-2 --type string --set /desktop/gnome/background/picture_filename "$background"
sleep $segundos
done

# não, não foi passado -l, então só troca 1x.
else
background=$( echo "$papeisdeparede" |
zzshuffle |
head -1
)
gconftool-2 --type string --set /desktop/gnome/background/picture_filename "$background"
fi
}

Change log

r710 by aureliojargas on Mar 29, 2012   Diff
SEGURANÇA: $1 colocado entre aspas na
chamada padrão zzzz -h de todas as
funções.
Go to: 
Sign in to write a code review

Older revisions

r669 by aureliojargas on Mar 28, 2012   Diff
lint: removendo espaços inúteis. Parte
2.
r540 by aureliojargas on May 24, 2011   Diff
COMBO: Removidos espaços e tabs
inúteis do fim das linhas, verificados
por utils/alinhamento
r526 by aureliojargas on May 23, 2011   Diff
Removidas as aspas em torno da
variável $# em algumas funções. Como
esta variável sempre tem um valor
numérico e nunca é vazia, as aspas são
desnecessárias.
All revisions of this file

File info

Size: 2439 bytes, 104 lines
Powered by Google Project Hosting