Koliko vas koristi „Upravitelj prozora za popločavanje pločica“ i sigurno će nam nakon nekog vremena dosaditi naša tapeta? Vrlo je neugodno morati ponovno sastaviti da biste mogli promijeniti jednostavnu pozadinu ili čak ponovno pokrenuti "dušik" i prenijeti mu drugi parametar.
Pa, danas vam donosim skriptu na bashu, ona dobiva slučajnu sliku iz naše kolekcije i stavlja je kao pozadinu Promijenite pozadinu dušika, ako preuzmete skriptu s ovdje ne zaboravite ukloniti .txt ekstenziju iz datoteke i dati joj dopuštenja za izvršavanje
direktorij = ~ / slika funkcija my_resolution () {res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' `my_high =` echo "$ res" | cut -d "x" -f 2` my_width = `echo" $ res "| izrezati -d "x" -f 1`} funkcija rand_image () {image = `ls -1 -b -R" $ direktorij "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | sort --random-sort | head -1` image_dir = `find" $ directory "-iname" $ image "`} function image_resolution () {rand_image high_image = `identify -format"% h "" $ image_dir "` wide_image = `identify -format"% w "" $ image_dir "`} omjer funkcije () {my_resolution image_resolution high_rate = `echo $ high_image / $ my_high | bc -l` width_proportion =` echo $ image_width / $ my_width | bc -l`} skalar funkcije () {omjer ako [`echo" $ height_rate> 1 "| bc` -eq 1 -o` echo" $ width_rate> 1 "| bc` -eq 1]; zatim dušik --set-zoom "$ image_dir" ostalo dušik - set-centrirano "$ image_dir" fi} skala izlaz
Sada dolazi objašnjenje scenarija.
direktorij = ~ / Slike // Promijenite u direktorij u kojem se nalaze vaše pozadine
image_resolution () // Ova funkcija otkriva razlučivost našeg monitora i sprema je u varijable:
moj_visoko // Visoko
moja_širina //Širina
slika_randa () // Ova funkcija dobiva sliku unutar "direktorija"
slika = `ls -1 -b -R" $ direktorij "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | sortiraj –naključno-sortiraj | glava -1`
primjer:
imagen=`ls -1 -b -R "$directorio" | grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".nueva_extensión" | sort --random-sort | head -1`
image_resolution () // Ova funkcija dobiva razlučivost slike dobivenu funkcijom rand_image ()
proporcija () // Ova funkcija dobiva omjer image_resolution / screen_resolution
uspon () // Ova funkcija skalira sliku ako je veća od razlučivosti našeg monitora i postavlja pozadinu
Sada kada imamo skriptu za dodjeljivanje nasumičnih pozadina dušiku (a također se i slika prilagođava vašem monitoru), skriptu moramo pokretati svako toliko često, to se postiže izvršavanjem sljedeće naredbe na početku
watch -n 4 ruta_donde_se_encuentra_el_script/nombre_del_script
U ovom se slučaju ova naredba izvršava svake 4 sekunde, imajte na umu da je path_where_the_script_is_found puna staza na kojoj se skripta nalazi, a script_name ime koje je dato skripti.
Nadam se da će vam biti korisna.
Provjerit ću ovaj dušik za KDE skriptu koju želim napraviti :)
Inače dobar post ... hahahaha, izvrsna fotografija koju ste izabrali za post (Snoopy's LOL !!!)
Jjajajajjajajaja hvala, zaista snoopy tombola, hahajjajajajajajaj
Hvala vam..
hvala
hvala ti!
Ovo ne uspijeva za cimet, zar ne?
Nemam pojma kako promijeniti pozadinu u cimetu, ali sigurno je da funkcija rand_image radi tako da dobijete slučajnu sliku, pa je jednostavno morate proslijediti $ dir_image
Dopustite mi da istražim
Hvala vam, malo sam ga modificirao za buduće generacije ... Nadam se da se nećete truditi
Volio bih znati što mislite, ne znam puno o jeziku
#! / bin / bash
# ~ Izvorni autor
#~
# ~ halonsov: Matematičar, ljubitelj GNU / LINUX-a, programer, korisnik Debiana i xmonada.
#~
# ~ Reference
#~ https://blog.desdelinux.net/cambiar-automaticamente-el-fondo-de-pantalla-con-nitrogen/
#~
# ~ Naredba za pokretanje skripte svakih 120 sekundi
# ~ watch -n 120 /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh
#~
# ~ Suradnja
# ~ + AMEM +
# ~ Osobno ga više volim koristiti samo jednom kako ne bih koristio prostor
# ~ dodavanje u autostart.sh
# ~ /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh &
# ~ Osobna bilješka
# ~ ovu skriptu izvorno je izradio halonsov.
# ~ Izmijenio sam ga tako da ga samo malo, da ga izvedem na početku #CrunchBang!
# ~ svrha je da ih možete vidjeti sve one slike koje imate na disku
# ~ svako toliko, i da se prilagode zaslonu u skladu sa svojim svojstvima.
# ~ za ovo ova skripta identificira karakteristike vašeg monitora,
# ~ i one sa slike ili fotografije iz vašeg «direktorija»,
# ~ kako bi se izveo dušik + izbjegavanje parametra skaliranja ili zumiranja
# ~ izdužene, pikselizirane slike.
# ~ Ako ova skripta ne odgovara vašim potrebama, možete izmijeniti njene parametre
# ~ Npr. Dušik - usredotočen na skup
# ~ za centriranje slike bez skaliranja
# ~ Preporučujem vam da proučite priručnik za dušik.
#Imenik
#Direktorij slika koje će se koristiti kao pozadina, uključujući poddirektorijume
#Promijenite se u direktorij u kojem se nalaze vaše pozadine
# Npr. Direktorij = / home / ... / images
direktorij = / home / amem / images / Wallpaper
# Razlučivost monitora
# Ova funkcija otkriva razlučivost našeg monitora i sprema je u varijable:
funkcija my_resolution ()
{
# Rezoluciju svog monitora dobivamo s xrandr
res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' `
# Visina monitora
my_high = `echo" $ res "| izrezati -d "x" -f 2`
# Širina monitora
my_width = `echo" $ res "| izrezati -d "x" -f 1`
}
#Slučajna slika
# Ova funkcija dobiva sliku unutar "direktorija"
funkcija rand_image ()
{
# Dobivamo ime neke slike unutar $ direktorija
slika = `ls -1 -b -R" $ direktorij "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | sortiraj –naključno-sortiraj | glava -1`
#VAŽNO! Ako primijetite da filtriramo sve datoteke s "nastavkom" .png, .jpg, .jpeg. Po potrebi dodajte -e ".extention".
#Primjer:
# image = `ls -1 -b -R" $ direktorij "| grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".novo_proširenje" | sortiraj –naključno-sortiraj | glava -1`
# Dobivamo put do $ image
image_dir = `pronađi" $ direktorij "-iname" $ image "`
}
# Razlučivost slike
# Ova funkcija dobiva razlučivost slike dobivenu funkcijom rand_imagen ()
funkcija image_resolution ()
{
slika_randa
# Dobivamo visinu $ image
high_image = `identificiraj -format"% h "" $ image_dir "`
# Dobivamo širinu $ image
image_width = `identificiraj -format"% w "" $ image_dir "`
}
# Dobivamo omjer image_resolution / screen_resolution
# rezultat ove podjele vraća vrijednost veću ili manju od 1
# proporcija 1 slika je veća od zaslona
udio funkcije ()
{
moja_resolucija
image_resolution
ratio_high = `echo $ image_high / $ my_high | bc -l`
width_proportion = `eho $ width_image / $ my_width | bc -l`
}
# Dobivamo omjer slike_visoke / širine slike
# rezultat ove podjele vraća vrijednost veću ili manju od 1; Osim ako je slika kvadratna Oo
# image_proportion 1 slika je viša nego što je široka
omjer funkcije slike ()
{
image_resolution
ratio_image_reason = `echo $ tall_image / $ wide_image | bc -l`
}
# Postavite pozadinu
# Ova funkcija mijenja parametre dušika u skladu sa svojstvima slike u odnosu na monitor
# Slika previsoka ili veća od našeg zaslona Postavlja pozadinu skaliranjem slike
# –Set-centrirano centrira sliku bez skale
# –Set-scaled ispunjava zaslon iskrivljenom slikom
# –Set-zoom ispunjava zaslon umanjenom slikom do vrha
# –Set-zoom-fill ispunjava zaslon umanjenom slikom
skalarna funkcija ()
{
razmjer
if [`echo" $ width_proportion> 1 ″ | bc` -eq 1]; zatim
#Ako je razlučivost slike veća od one na našem zaslonu, izvršite ...
dušik –prilagoden "$ image_dir"
drugo
if [`echo" $ high_rate> 1 ″ | bc` -eq 1]; zatim
#Ako je razlučivost slike manja od one na našem zaslonu, izvršite ...
dušik - usredotočen na skup "$ image_dir"
drugo
# Kad je slika manja od zaslona, možemo je proširiti na duljinu ili širinu
proporcija slike
if [`echo« $ proportionimage_reason> 1 ″ | bc` -eq 1]; zatim
#Ako je visina slike manja od visine našeg zaslona, izvršite ...
dušik –set-zum "$ image_dir"
drugo
if [`echo« $ proportionimage_reason <1 "| bc` -eq 1]; tada
#Ako je širina slike manja od širine našeg zaslona, izvršite ...
dušik –postavi-zum-ispuni "$ image_dir"
fi
fi
fi
fi
}
popeti se
izlaz
Izvrsno. Hvala vam.