Ilan sa inyo ang gumagamit ng isang "Tiling window manager" at tiyak na makalipas ang ilang sandali ay binabato tayo ng aming wallpaper? Nakakainis na kailangang muling mag-ipon upang mabago ang isang simpleng wallpaper, o kahit na patakbuhin muli ang "nitrogen" at ipasa ang isa pang parameter dito.
Ngayon dinadala ko sa iyo ang isang script sa bash, nakakakuha ito ng isang random na imahe mula sa aming koleksyon at inilalagay ito bilang isang wallpaper Baguhin ang Nitrogen Wallpaper, kung na-download mo ang script mula sa dito huwag kalimutang alisin ang .txt extension mula sa file at bigyan ito ng mga pahintulot na magpatupad
direktoryo = ~ / Mga imahe gumana my_resolution () {res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' `my_high =` echo "$ res" | gupitin -d "x" -f 2` my_width = `echo" $ res "| gupitin -d "x" -f 1`} pag-andar rand_image () {image = `ls -1 -b -R" $ direktoryo "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | pag-uuri --random-sort | ulo -1` image_dir = `hanapin ang" $ direktoryo "-iname" $ imahe "`} function image_resolution () {rand_image high_image = `kilalanin -format"% h "" $ image_dir "` wide_image = `kilalanin -format" % w "" $ image_dir "`} proporsyon ng pag-andar () {my_resolution image_resolution taas_rate = `echo $ image_high / $ my_high | bc -l` proportion_width =` echo $ image_width / $ my_width | bc -l`} function scalar () { proporsyon kung [`echo" $ ratio_high> 1 "| bc` -eq 1 -o` echo" $ ratio_width> 1 "| bc` -eq 1]; pagkatapos nitrogen --set-zoom "$ image_dir" iba pa nitrogen --set-centered "$ image_dir" fi} scale exit
Dumating na ngayon ang paliwanag ng script.
direktoryo = ~ / Mga Larawan // Baguhin ang direktoryo kung saan matatagpuan ang iyong mga wallpaper
image_resolution () // Nakita ng pagpapaandar na ito ang resolusyon ng aming monitor, at nai-save ito sa mga variable:
aking_taas // Mataas
my_width // Lapad
rand_image () // Ang pagpapaandar na ito ay nakakakuha ng isang imahe sa loob ng "direktoryo"
imahe = `ls -1 -b -R" $ direktoryo "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | pag-uuri –random-sort | ulo -1`
Halimbawa:
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 () // Ang pagpapaandar na ito ay nakakakuha ng resolusyon ng imahe na nakuha ng rand_image () na pagpapaandar
proporsyon () // Ang pagpapaandar na ito ay nakakakuha ng ratio ng imahe_resolution / screen_resolution
umakyat () // Sinusukat ng pagpapaandar na ito ang imahe kung ito ay mas malaki kaysa sa resolusyon ng aming monitor at itinatakda ang wallpaper
Ngayon na mayroon kaming script upang magtalaga ng random na wallpaper sa nitrogen (at ang imahe ay umaangkop sa iyong monitor) kailangan lamang naming patakbuhin ang script nang madalas, nakakamit ito sa pamamagitan ng pagpapatupad ng sumusunod na utos sa pagsisimula
watch -n 4 ruta_donde_se_encuentra_el_script/nombre_del_script
Sa kasong ito, ang utos na ito ay isinasagawa tuwing 4 na segundo, tandaan na ang path_where_the_script_is_found ay ang buong landas kung saan matatagpuan ang script at script_name ang pangalan na ibinigay sa script.
Inaasahan kong kapaki-pakinabang ito.
Susuriin ko ang Nitrogen na ito para sa isang script para sa KDE na nais kong gawin :)
Kung hindi man magandang post ... hahahaha, napakahusay na larawan na napili mo para sa post (Snoopy's LOL !!!)
Jjajajajjajajaja salamat, talaga snoopy raffle, hahajjajajajjajaj
Salamat..
Salamat
Salamat!
Hindi ito gagana para sa kanela diba?
Wala akong ideya kung paano baguhin ang wallpaper sa kanela, ngunit ang sigurado na bagay ay ang pagpapaandar sa rand_image ay nagsisilbi sa iyo upang makakuha ng isang random na imahe, kaya kailangan mo lamang ipasa ito $ dir_image
Hayaan akong mag-imbestiga
Salamat, binago ko ito nang kaunti para sa hinaharap na mga henerasyon ... sana ay huwag kayong mag-abala
Nais kong malaman kung ano ang iniisip mo, hindi ko masyadong alam ang tungkol sa wika
#! / bin / bash
# ~ Orihinal na may-akda
#~
# ~ halonsov: Matematika, GNU / LINUX kalaguyo, programmer, Debian at xmonad na gumagamit.
#~
# ~ Mga Sanggunian
#~ https://blog.desdelinux.net/cambiar-automaticamente-el-fondo-de-pantalla-con-nitrogen/
#~
# ~ Command na patakbuhin ang script tuwing 120 segundo
# ~ panonood -n 120 /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh
#~
# ~ Pakikipagtulungan
# ~ + AMEM +
# ~ Personal na ginusto kong gamitin ito nang isang beses lamang upang hindi magamit ang puwang
# ~ pagdaragdag sa autostart.sh
# ~ /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh &
# ~ Personal na tala
# ~ ang script na ito ay orihinal na ginawa ni halonsov.
# ~ Binago ko ito upang kaunti lamang, upang maisagawa ito sa simula ng #CrunchBang!
# ~ ang layunin ay ang lahat ng mga imaheng mayroon ka sa iyong disk maaari mong makita ang mga ito
# ~ tuwing madalas, at nagsasaayos sila sa screen ayon sa kanilang mga pag-aari.
# ~ para dito kinikilala ng script na ito ang mga katangian ng iyong monitor,
# ~ at sa mga larawan o larawan ng iyong «direktoryo»,
# ~ upang maipatupad ang nitrogen + isang pag-iwas sa pag-scale o pag-zoom
# ~ pinahabang, pixelated na mga imahe.
# ~ Kung ang script na ito ay hindi umaangkop sa iyong mga pangangailangan, maaari mong baguhin ang mga parameter nito
# ~ Halimbawa ng nitrogen – nakasentro sa set
# ~ upang isentro ang imahe nang walang pag-scale
# ~ Inirerekumenda kong pag-aralan mo ang manwal ng nitrogen.
# Direktoryo
# Direktoryo ng mga imahe na gagamitin bilang wallpaper, kabilang ang mga subdirectory
#Baguhin ang direktoryo kung saan matatagpuan ang iyong mga wallpaper
# Hal direktoryo = / home /… / mga imahe
direktoryo = / bahay / amem / mga imahe / Wallpaper
# Resolution ng monitor
Nakita ng pagpapaandar na ito ang resolusyon ng aming monitor, at nai-save ito sa mga variable:
pagpapaandar my_resolution ()
{
# Nakukuha namin ang resolusyon ng aming monitor gamit ang xrandr
res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' `
# Taas ng monitor
my_high = `echo" $ res "| gupitin -d "x" -f 2`
# Lapad ng monitor
my_width = `echo" $ res "| gupitin -d "x" -f 1`
}
#Random Image
# Ang pagpapaandar na ito ay nakakakuha ng isang imahe sa loob ng "direktoryo"
function rand_image ()
{
# Nakakuha kami ng pangalan ng ilang imahe sa loob ng $ direktoryo
imahe = `ls -1 -b -R" $ direktoryo "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | pag-uuri –random-sort | ulo -1`
# MAHALAGA! Kung napansin mong sinasala namin ang lahat ng mga file na may "extension" .png, .jpg, .jpeg. Idagdag -e ".extension" kung naaangkop.
# Halimbawa:
# image = `ls -1 -b -R" $ direktoryo "| grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".new_extension" | pag-uuri –random-sort | ulo -1`
# Nakakuha kami ng landas ng $ imahe
image_dir = `hanapin ang" $ direktoryo "-pangalanan ang" $ imahe "`
}
# Resolusyon ng imahe
# Ang pagpapaandar na ito ay nakakakuha ng resolusyon ng imahe na nakuha ng rand_imagen () na pagpapaandar
pag-andar ng image_resolution ()
{
rand_image
# Nakakuha kami ng taas ng $ imahe
high_image = `kilalanin -format"% h "" $ image_dir "`
# Nakukuha namin ang lapad ng $ imahe
image_width = `kilalanin -format"% w "" $ image_dir "`
}
# Nakukuha namin ang ratio ng imahe_resolution / screen_resolution
# ang resulta ng paghahati na ito ay nagbabalik ng halagang mas malaki o mas mababa sa 1
# proporsyon 1 ang imahe ay mas malaki kaysa sa screen
proporsyon ng pag-andar ()
{
my_resolution
imahe_resolution
ratio_high = `echo $ image_high / $ my_high | bc -l`
width_proportion = `echo $ width_image / $ my_width | bc -l`
}
# Nakukuha namin ang ratio ng image_high / image_width
# ang resulta ng paghahati na ito ay nagbabalik ng halagang mas malaki o mas mababa sa 1; Maliban kung ang imahe ay parisukat Oo
# image_proportion 1 ang imahe ay mas mataas kaysa sa malapad nito
proporsyon ng imahe ng function ()
{
imahe_resolution
ratio_image_reason = `echo $ taas_image / $ wide_image | bc -l`
}
#Itakda ang wallpaper
# Binabago ng pagpapaandar na ito ang mga parameter ng nitrogen ayon sa mga pag-aari ng imahe na may kaugnayan sa monitor
#Image masyadong matangkad o mas malaki kaysa sa aming screen Itinatakda ang wallpaper sa pamamagitan ng pag-scale ng imahe
# –Nagtutuon ng naka-set na sentro ang hindi naka-iskala na imahe
# –Set-scale na pinunan ang screen ng warped na imahe
# –Set-zoom pinupunan ang screen na may naka-scale na imahe sa itaas
# –Set-zoom-fill punan ang screen na may naka-scale na imahe kasama
pagpapaandar ng scalar ()
{
proporsyon
kung [`echo" $ width_proportion> 1 ″ | bc` -eq 1]; tapos
#Kung ang resolusyon ng imahe ay mas malaki kaysa sa aming screen, ipatupad ...
nitrogen –set-scale na "$ image_dir"
iba
kung [`echo" $ high_rate> 1 ″ | bc` -eq 1]; tapos
#Kung ang resolusyon ng imahe ay mas maliit kaysa sa aming screen, ipatupad ...
nitrogen –set-centered na "$ image_dir"
iba
#Kapag ang imahe ay mas maliit kaysa sa screen maaari namin itong palawakin sa haba o lapad
proporsyon ng imahe
kung [`echo« $ proportionimage_reason> 1 ″ | bc` -eq 1]; tapos
#Kung ang taas ng imahe ay mas maliit kaysa sa aming screen, ipatupad ...
nitrogen –set-zoom "$ image_dir"
iba
kung [`echo« $ proportionimage_reason <1 "| bc` -eq 1]; kung gayon
#Kung ang lapad ng imahe ay mas maliit kaysa sa aming screen, ipatupad ...
nitrogen –set-zoom-punan ang "$ image_dir"
fi
fi
fi
fi
}
umakyat
lumabas
Napakahusay Salamat.