User:Kvaik

From ICO wiki
Jump to navigationJump to search

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

#!/usr/bin/python
# -*- coding: utf-8 -*-

import os, sys, time, glob

GALERII = "/home/student/Pictures/DSlideshow"

#Kausta kontroll- puudumisel see luuakse ja skript lõpetatakse teatega
if not os.path.exists(GALERII):
	os.makedirs(GALERII)
	print "Lisa kausta taustapildid ja jooksuta skript uuesti"
	sys.exit()
else:
	while 1 == 1 : #lõpmatu tsükkel
		for bg in glob.glob(GALERII+'/*.jpg'):
			pilt = "file://"+bg
			os.system('gsettings set org.gnome.desktop.background picture-uri %s' %(pilt))
			time.sleep(15)

Powershell'i skript

Kui leian, annan teada-.-