Pular para o conteúdo

Papel de parede - Mudança automática no Ubuntu/Debian

Este script foi criado para fazer mudança automática dos papéis de parede nas pastas que você desejar. Foi feito em Outubro do ano passado, na época estava iniciando nos scripts e queria fazer uma mudança randômica de várias fotos como papel de parede.

Ele não tá muito comentado mais funciona que é uma beleza!

Salve-o na pasta do usuário, abra um terminal e use o comando ". wallpaper.sh"
Iraziman da Silva Moura selvaking
Hits: 11.163 Categoria: Shell Script Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

Este script foi criado para fazer mudança automática dos papéis de parede nas pastas que você desejar. Foi feito em Outubro do ano passado, na época estava iniciando nos scripts e queria fazer uma mudança randômica de várias fotos como papel de parede.

Ele não tá muito comentado mais funciona que é uma beleza!

Salve-o na pasta do usuário, abra um terminal e use o comando ". wallpaper.sh"
Download 5314.wallpaper.sh Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Versões atualizadas deste script

Esconder código-fonte

#!/bin/bash

# set -e

# O script usa o sudo no final para o usuário que executa.

DIR_FOTO=("/usr/share/backgrounds") # Array que guarda as pastas que contém as imagens.
# Exemplo com mais de uma pasta, Assim vc pode até criar uma pasta wallpaper pro usuário e acrescenta-la ao script.
# DIR_FOTO=("/media/NTFS_BACKUP/BACKUP/Meus Documentos/Webshots Data" "${HOME}/Imagens/wallpaper" "/usr/share/images/grub" "/usr/share/backgrounds")

FILE_BACKGROUND=/usr/share/backgrounds/background-1.xml # variável que guarda o nome do arquivo de Wallpaper.
# Verifique se o arquivo no seu sistema tem este nome e o salve antes de executar o script. Se não for este o nome do arquivo é só rodar o script,
# clicar com o direito na Área de trabalho e pedir para alterar o plano de fundo.
# Vc tbm pode usar o comando abaixo que modifica direto no "Editor de Configurações do Gnome". Detalhe: vc tem que ser root ou usar o sudo na frente
# gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string "/usr/share/backgrounds/contest/background-1.xml"
# Se vc souber é só acrescentar o comando acima no fim do script. ok!

STATIC="95.0" # Tempo que a imagem permanece estático.
TRANSITION="5.0" # Tempo de transição entre as imagens.


TMPFILE=$(mktemp ./temp.XXX)
LIST_FILES=$(find "${DIR_FOTO[@]:0}" | egrep ".(jpg|svg|png|tga)$")


primeira ()
{ 
cat <<EOF > "$(echo $TMPFILE)"
<background>
  <starttime>
    <year>$(date +%Y)</year>
    <month>$(date +%m)</month>
    <day>$(date +%d)</day>
    <hour>00</hour>
    <minute>00</minute>
    <second>00</second>
  </starttime>
<!-- This animation will start at midnight. -->
EOF
} 

segunda ()
{ 
cat <<EOF >> "$(echo $TMPFILE)"
    <to>$FILE</to>
  </transition>
EOF
} 

terceira ()
{ 
cat <<EOF >> "$(echo $TMPFILE)"
  <static>
    <duration>$STATIC</duration>
    <file>$FILE</file>
  </static>
  <transition>
    <duration>$TRANSITION</duration>
    <from>$FILE</from>
EOF
} 

quarta ()
{ 
cat <<EOF >> "$(echo $TMPFILE)"
    <to>$FIM_FILE</to>
  </transition>
</background>
EOF
}

while read FILE; do x[i]="$FILE"; let i++; done < <(echo "${LIST_FILES}")
i=0
cnt=${#x[@]}
cnt_1=$(( ${#x[@]}-1 ))

SINAL=0
while read FILE
do
 if [ "$SINAL" -eq "0" ]
 then
 SINAL=1
 primeira
 FIM_FILE=$FILE
 else
 segunda
 fi
 terceira
done < <(for i in $(seq 0 $cnt_1); { echo -e "$RANDOM\t${x[$i]}"; } | sort | cut -f2)
 quarta

sudo mv $TMPFILE $FILE_BACKGROUND&&
sudo chmod 644 $FILE_BACKGROUND&&
sudo chown root. $FILE_BACKGROUND&&
echo "arquivo $FILE_BACKGROUND criado"

exit 0
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Reduz ou aumenta o tamanho da imagem

Prova LPI em shell script - com contador de acertos

RWwmaMp3 - converter wma para mp3

Script de instalação do VLC completo (via slackbuilds)

Backup

#1 Comentário enviado por victormag em 23/02/2012 - 11:19h
Tudo bem, executei pelo terminal, mas nao aconteceu nada!
Tenho que botar em qual pasta? tenho que fazer algo a mais?
#2 Comentário enviado por selvaking em 23/02/2012 - 21:15h
corrige a linha

FILE_BACKGROUND=/usr/share/backgrounds/background-1.xml

para

FILE_BACKGROUND=/usr/share/backgrounds/contest/background-1.xml

e acrescenta

gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string "$FILE_BACKGROUND"

antes da linha final que é "exit 0"
ficando assim:

echo "arquivo $FILE_BACKGROUND criado"
gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string "$FILE_BACKGROUND"
exit 0

Contribuir com comentário

Entre na sua conta para comentar.