User:Kvaik: Difference between revisions
Line 66: | Line 66: | ||
# -*- coding: utf-8 -*- | # -*- coding: utf-8 -*- | ||
import os, sys, time, glob | import os, sys, time, glob, getpass | ||
# | #Kausta asukoht | ||
GALERII = "/home/ | GALERII = "/home/%s/Pictures/DSlideshow" %(getpass.getuser()) | ||
#Kausta kontroll- puudumisel see luuakse ja skript lõpetatakse teatega | #Kausta kontroll- puudumisel see luuakse ja skript lõpetatakse teatega | ||
if not os.path.exists(GALERII):#kausta | if not os.path.exists(GALERII): | ||
os.makedirs(GALERII)# | #kausta loomine | ||
print "Lisa kausta taustapildid ja jooksuta skript uuesti"# | os.makedirs(GALERII) | ||
sys.exit() | #nö. veatede kasutjale | ||
print "Lisa kausta taustapildid ja jooksuta skript uuesti" | |||
#töö lõpetamine | |||
sys.exit() | |||
else: | else: | ||
while 1 == 1 : #lõpmatu tsükkel | while 1 == 1 : #lõpmatu tsükkel | ||
for bg in glob.glob(GALERII+'/*.jpg'): | #tsükkel mis jookseb läbi kausta ja otsib .jpg laiendiga faile | ||
for bg in glob.glob(GALERII+'/*.jpg'): | |||
os.system('gsettings set org.gnome.desktop.background picture-uri %s' %(pilt))# | #uue pildi deklareerimine, bg on for-tsükklist leitud "asukoht/pildinimi" | ||
time.sleep(15) | pilt = "file://"+bg | ||
#muudab taustapildi | |||
os.system('gsettings set org.gnome.desktop.background picture-uri %s' %(pilt)) | |||
#ooteaeg | |||
time.sleep(15) | |||
Revision as of 20:53, 4 November 2012
Bash'i skript
Skripti eesmärgiks on luua taustapiltide slideshow ehk teatud (kasutaja poolt määratud) ajaintervalli järel taustapilt vahetub.
Vaikimisi tahaks skript kasutada taustapilte kaustast /home/$USER/Pictures/DSlideshow. Kui seda pole, siis kaust luuakse- kuhu tuleks lisada soovitud pildid ja skript uuesti jooksutada. Seda annab loomulikult muuta.
Taustapiltide albumi pilte hakatakse kordama, vaikimisi kasutatakse ainult .png ja .jpg laiendiga faile (st. kaustas või muid faile ei üritada kuidagi taustapildiks manada). Kui Oled kindel, et ei lisa pildialbumi kausta teisi kaustu või mingisuguseid muid (loe: mitte pilte) faile, siis võid asendada for-tsükkli ja sellele järgneva rea järgmisega:
for i in $( ls $GALERII ); do
gconftool-2 -t string -s /desktop/gnome/background/picture_filename $GALERII/$i
Kasutajal tuleks määrata endale sobiv intervall, vaikimisi on testimise eesmärgil selleks 15 sekundit- igapäevaseks kasutamiseks umbes 0,5-1 h (1800-3600). Mugav oleks luua Custom Application Launcher (command: sh skriptiasukoht/skript.sh) või lisada kausta, kus see käivitatakse Linuxi käivitamisel.
Skript:
#!/bin/bash
#Autor Kristjan Vaik
#Rühm A21
#Versioon 1.26.05
#Tekitab GNOME sessioni taustapildide slideshow (kasutaja määratud ajavahemike järel vahetab taustapilti)
#!!!Kasutaja peaks määrama kausta, kus taustapilte hoitakse!!!
#Taustapiltide kaust (vaikimisi kasutaja piltide kaust)
GALERII=/home/$USER/Pictures/DSlideshow
#Vaikimisi loob skript vastava kausta, kus hoida taustapilte
#Kui tahad kasutada muud kausta- kommenteeri järgimine if-lause välja
if [ ! -d $GALERII ]; then
mkdir $GALERII
echo Lisa kausta taustapildid ja jooksuta skript uuesti
#lõpetab skripti
exit 1
fi
#Lõpmatu tsükkel, kui kõik pildid albumis on läbi käidud, alustatakse uuesti albumi läbikäimist
while [ 1 -eq 1 ]; do
#tsükkel mis jookseb läbi kogu pildialbumi, valides .jpg ja .png laiendiga failid
for i in $( find $GALERII -type f -name \*.jpg -o -name \*.png ); do
#Kontrollib faili olemasolu, kui skripti jooksutamise ajal peaks keegi mõne pildi kustutama
if [ -f $i ]; then
#rida, mis teeb taustapildi vahetuse
gconftool-2 -t string -s /desktop/gnome/background/picture_filename $i
fi
#!!!Kasutaja peaks ise määrama endale sobiva intervalli, testimise eesmärgil on see 15 sekundit
#sekundites, reguleerib millise intervalli järel taust vahetub
sleep 15
done
done
Python'i skript
Sisuliselt võrdväärne bash'i skript.
Skript
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os, sys, time, glob, getpass
#Kausta asukoht
GALERII = "/home/%s/Pictures/DSlideshow" %(getpass.getuser())
#Kausta kontroll- puudumisel see luuakse ja skript lõpetatakse teatega
if not os.path.exists(GALERII):
#kausta loomine
os.makedirs(GALERII)
#nö. veatede kasutjale
print "Lisa kausta taustapildid ja jooksuta skript uuesti"
#töö lõpetamine
sys.exit()
else:
while 1 == 1 : #lõpmatu tsükkel
#tsükkel mis jookseb läbi kausta ja otsib .jpg laiendiga faile
for bg in glob.glob(GALERII+'/*.jpg'):
#uue pildi deklareerimine, bg on for-tsükklist leitud "asukoht/pildinimi"
pilt = "file://"+bg
#muudab taustapildi
os.system('gsettings set org.gnome.desktop.background picture-uri %s' %(pilt))
#ooteaeg
time.sleep(15)
Powershell'i skript
Skript
Piltide vähendamine(protsentuaalselt) .. ??
Kui leian, annan teada-.-