Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Script na měnění pozadí v Ubuntu, náhodné tapety se stahují z wallbase.net  (Přečteno 4035 krát)

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
Script, který pravidelně stáhne náhodnou tapetu z wallbase.net a v pravidelných intervalech ji obmění.
Ve scriptu by mělo být vše popsané, je potřeba jej nakonfigurovat.

Je vhodné ho dát do aplikací spuštěných při přihlášení.

Pokud se ptáte proč jsem nepoužil CRON, protože DBUS.
Kód: [Vybrat]
#!/usr/bin/env bash
#####################################################################
#                                                                   #
#   Thanks to wallbase.net for you great database of wallpapers!    #
#                                                                   #
#              Random Wallpaper switcher for Ubuntu                 #
#                     Author: Tomáš Břinčil                         #
#           me@tomasbrincil.cz - www.tomasbrincil.cz                #
#####################################################################
# WARNING! Do not paste wallbase.sh script into DIRECTORY
# and any file you don't want delete.
# Directory to archive yours wallpapers.
DIRECTORY="/home/snouman/Obrázky/Wallpapers"
 
# Size in Kb of cache for stored wallpapers.
CACHE="50000"
 
# 100 lean wallpapers
# 010 may contain soft/erotic poses (non nude), partial nudity (bikini), some gore
# 001 contains nude/erotic(softcore)/boobs/vagina, gore/violence, etc...
# You may combine them. For example 011 means that wallpapers obtains girls in bikini AND nude/erotic...
CATEGORY="110"
 
# Time in seconds for one wallpaper.
TIME="300"
 
# Resolutions
# Standard WideScreen
# 800x600 1024x600
# 1024x768 1280x800
# 1280x960 1366x768
# 1280x1024 1440x900
# 1400x1050 1600x900
# 1600x1200 1680x1050
# 2560x2048 1920x1080
# 1920x1200
# 2560x1440
# 2560x1600
RESOLUTION="1680x1050"
 
# Ratio should be "0"
# If you have dual monitor, two LCDs set 2.50
# In case dual wide, two LCD 1680x1050 set 3.20
RATIO="0"
 
while [ 1 ]
do
cd $DIRECTORY
wget -O .cache -q "http://wallbase.net/random/213/eqeq/$RESOLUTION/$RATIO/$CATEGORY/20"
LINK=(`cat .cache | grep -E 'http://wallbase.net/wallpaper/[0-9]{6}' -m 1 -o`)
wget -O .cache -q $LINK
IMG=(`cat .cache | grep -E '\http://wallbase2.org/rozne/[0123456789abcdefABCDEF]{32}/wallpaper-[0-9]{0,10}.jpg' -m 1 -o`)
SIZEBEFORE=(`du | awk '{print $1}'`)
wget -q $IMG
SIZEAFTER=(`du | awk '{print $1}'`)
NEWONE=(`ls -ur | tail -1`)
if [ $SIZEBEFORE -lt $SIZEAFTER ] ; then
gconftool-2 -t string -s /desktop/gnome/background/picture_filename "$DIRECTORY/$NEWONE"
echo $NEWONE
sleep $TIME
fi
while [ $CACHE -lt $SIZEAFTER ]
do
rm `ls -c | tail -n 1`
SIZEAFTER=(`du | awk '{print $1}'`)
done
done
« Poslední změna: 10 Ledna 2011, 21:51:35 od Tomáš Břinčil »

daysleeper

  • Stálý člen
  • **
  • Příspěvků: 1206
take bych potreboval zmenit pozadi, uz ho mam notne presezene :)

zde jsem nasel par bash tipu, treba se ti budou priste hodit:
Kód: [Vybrat]
cd $DIRECTORYhttp://mywiki.wooledge.org/BashPitfalls#cd_.24.28dirname_.22.24f.22.29
http://mywiki.wooledge.org/BashPitfalls#cd_.2BAC8-foo.3B_bar

Kód: [Vybrat]
rm `ls -c | tail -n 1`http://mywiki.wooledge.org/ParsingLs

take mam par dotazu:
Kód: [Vybrat]
LINK=(`cat .cache | grep -E 'http://wallbase.net/wallpaper/[0-9]{6}' -m 1 -o`)proc spoustis tu rouru v subshellu? je v tom nejaka vyhoda oproti
Kód: [Vybrat]
LINK=`cat .cache | grep -E 'http://wallbase.net/wallpaper/[0-9]{6}' -m 1 -o`?

Kód: [Vybrat]
SIZEBEFORE=(`du | awk '{print $1}'`)ktereho souboru/adresare vlastne velikost meris?

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
...
Kód: [Vybrat]
SIZEBEFORE=(`du | awk '{print $1}'`)ktereho souboru/adresare vlastne velikost meris?

Měřím velikost "." aktuálního adresáře.
Díky za skvělý tipy, příště to bude určitě lepší 8)


daysleeper

  • Stálý člen
  • **
  • Příspěvků: 1206
Měřím velikost "." aktuálního adresáře.
problem, pokud dany adresar obsahuje jine podadresare
Kód: [Vybrat]
$ du
4 ./test2
60 .
$ SIZEBEFORE=(`du | awk '{print $1}'`);  echo $SIZEBEFORE
4
« Poslední změna: 11 Ledna 2011, 16:37:11 od Tomáš Břinčil »

1000MB

  • Návštěvník
  • Příspěvků: 71
dá sa to aj cez Drapes (záclony plochy):)

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
Měřím velikost "." aktuálního adresáře.
problem, pokud dany adresar obsahuje jine podadresare
Kód: [Vybrat]
$ du
4 ./test2
60 .
$ SIZEBEFORE=(`du | awk '{print $1}'`);  echo $SIZEBEFORE
4
Proč by tam měly být?

vasicekabc

Na stránkách Ubuntu Tweak jsem narazil na tohle:http://ubuntu-tweak.com/app/wally/, nemuselo by to být špatné, osobně tyhle volovinky moc nežeru.

 

Provoz zaštiťuje spolek OpenAlt.