Ndryshoni automatikisht sfondin me Azot

Sa prej jush përdorin një "menaxher të dritareve me pllaka" dhe me siguri pas një kohe sfondi ynë na mërzit? Veryshtë shumë e bezdisshme që duhet të rikompilosh për të qenë në gjendje të ndryshosh një sfond të thjeshtë, apo edhe për të ripërsëritur "azotin" dhe t'i kalosh një parametër tjetër.

Epo sot ju sjell një skenar në bash, ai merr një imazh të rastësishëm nga koleksioni ynë dhe e vendos atë si një sfond Ndryshoni sfondin e azotit, nëse shkarkoni skenarin nga këtu mos harroni të hiqni shtesën .txt nga skedari dhe t'i jepni asaj leje ekzekutimi

direktoria = ~ / Funksioni i imazheve rezolucioni im () {res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' "my_high =` jehonë "$ res" | prerë -d "x" -f 2` gjerësia ime = `jehona" $ res "| prerë -d "x" -f 1`} funksionin rand_image () {image = `ls -1 -b -R" $ direktori "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | renditje - renditje e zakonshme | kokë -1` image_dir = `gjeni" $ direktori "-iname" $ ​​image ""} funksion image_resolution () {rand_image high_image = "identifikoni -format" "% h" "$ image_dir" "wide_image =" identifikoni -format " % w "" $ image_dir ""} proporcioni i funksionit () {my_resolution image_resolution height_rate = "jehonë $ image_high / $ my_high | bc -l` proporcion_width =" jehonë $ image_width / $ my_width | bc -l "} skalari i funksionit () { përpjesëtimi nëse [`echo" $ ratio_high> 1 "| bc` -eq 1 -o` jehonë" $ ratio_width> 1 "| bc` -eq 1]; atëherë azoti - zmadhimi i zërit "$ image_dir" tjetër azot - dalja në shkallë e "$ image_dir" në qendër

Tani vjen shpjegimi i skenarit.
direktori = ~ / Imazhe // Ndryshoni në drejtorinë ku gjenden sfondet tuaja

image_resolution () // Ky funksion zbulon rezolucionin e monitorit tonë dhe e ruan atë në variablat:
ime e larte // I gjatë
gjerësia ime // Gjerësia

rand_image () // Ky funksion merr një imazh brenda "direktorisë"

imazh = `ls -1 -b -R" $ directory "| grep -i -e ".png" -e ".jpg" -e ".jpeg" renditje –random-renditje | kokë -1`

E RORTNDSISHME! Nëse vëreni se po filtrojmë të gjitha skedarët me "shtrirje" .png, .jpg, .jpeg. Shto -e ".zgjatje" sipas rastit.

Shembull:

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 () // Ky funksion fiton rezolucionin e imazhit të marrë nga funksioni rand_image ()

proporcioni () // Ky funksion merr raportin image_resolution / screen_resolution

ngjit () // Ky funksion shkallëzon imazhin nëse është më i madh se rezolucioni i monitorit tonë dhe vendos sfondin

Tani që kemi skenarin për të caktuar letër-muri të rastit në azot (dhe gjithashtu imazhi përshtatet në monitorin tuaj) ne duhet vetëm ta bëjmë skenarin të ekzekutohet çdo herë, kjo arrihet duke ekzekutuar komandën e mëposhtme gjatë fillimit

watch -n 4 ruta_donde_se_encuentra_el_script/nombre_del_script

Në këtë rast, kjo komandë ekzekutohet çdo 4 sekonda, vini re se rruga_ku_shkruesi_ është_ gjetur është rruga e plotë ku ndodhet skripti dhe emri i shkrimit është emri i dhënë shkrimit.

Unë shpresoj se ju duket e dobishme.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   KZKG ^ Gaara dijo

    Do ta kontrolloj këtë Azot për një skenar KDE që dua ta bëj :)
    Përndryshe post i mirë ... hahahaha, foto e shkëlqyeshme që keni zgjedhur për postimin (Snoopy's LOL !!!)

    1.    alpj dijo

      Jjajajajjajajaja faleminderit, me të vërtetë lotari snoopy, hahajjajajajjajaj

  2.   st0rmt4il dijo

    Faleminderit..

  3.   Gjerësia dijo

    Falënderim

  4.   ferkmetal dijo

    Faleminderit!

  5.   izzyvp dijo

    Kjo nuk funksionon për kanellën, apo jo?

    1.    alpj dijo

      Nuk kam ide se si të ndryshoj sfondin në kanellë, por gjëja e sigurt është që funksioni rand_image funksionon që ju të merrni një imazh të rastësishëm, kështu që thjesht duhet ta kaloni atë $ dir_image
      Më lejoni të hetoj

  6.   + AMEM + dijo

    Faleminderit, e modifikova pak për brezat e ardhshëm ... Shpresoj të mos shqetësoheni
    Do të doja të dija se çfarë mendon, nuk di shumë për gjuhën

    #! / bin / bash

    # Autori origjinal
    #~
    # ~ halonsov: Matematikan, dashnor i GNU / LINUX, programues, përdorues i Debian dhe xmonad.
    #~
    # ~ Referencat
    #~ https://blog.desdelinux.net/cambiar-automaticamente-el-fondo-de-pantalla-con-nitrogen/
    #~
    # ~ Komandoni për të ekzekutuar skenarin çdo 120 sekonda
    # ~ shiko -n 120 /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh
    #~
    # ~ Bashkëpunimi
    # ~ + AMEM +
    # ~ Personalisht preferoj ta përdor vetëm një herë në mënyrë që të mos përdor hapësirë
    # ~ duke shtuar në autostart.sh
    # ~ /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh &
    # Note Shënim personal
    # ~ ky skenar është bërë fillimisht nga halonsov.
    # ~ Unë e modifikova atë në mënyrë që vetëm pak, për ta ekzekutuar atë në fillim të #CrunchBang!
    # ~ Qëllimi është që të gjitha ato imazhe që keni në disk mund t'i shihni
    # ~ çdo shpesh, dhe që ata përshtaten në ekran në përputhje me vetitë e tyre.
    # ~ për këtë ky skenar identifikon karakteristikat e monitorit tuaj,
    # ~ dhe ato të imazhit ose fotografisë së «direktorisë» tuaj,
    # ~ në mënyrë që të ekzekutohet azoti + një parametër shkallëzimi ose zoom duke shmangur
    # images imazhe të zgjatura, me pikselacion.
    # ~ Nëse ky skenar nuk i përshtatet nevojave tuaja, ju mund të modifikoni parametrat e tij
    # ~ P.sh. azoti - i përqendruar në vendosje
    # ~ për të përqendruar imazhin pa shkallëzuar
    # ~ Unë ju rekomandoj që të studioni manualin e azotit.

    #Drejtoria
    #Drejtoria e imazheve që do të përdoren si sfond, përfshirë nëndrejtoritë
    #Shko te drejtoria ku ndodhen sfondet e tua
    # P.sh. direktoria = / home / / images
    direktoria = / home / amem / images / Wallpaper

    # Rezolucioni i monitorit
    # Ky funksion zbulon rezolucionin e monitorit tonë dhe e ruan atë në variablat:
    funksioni my_resolution ()
    {
    # Ne marrim rezolucionin e monitorit tonë me xrandr
    res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' "
    # Lartësia e monitorit
    my_high = `jehona" $ res "| prerë -d "x" -f 2`
    # Gjerësia e monitorit
    gjerësia ime = `jehona" $ res "| prerë -d "x" -f 1`
    }

    # Imazh i Rastësishëm
    # Ky funksion merr një imazh brenda "direktorisë"
    funksioni rand_image ()
    {
    # Ne marrim emrin e një imazhi brenda direktorisë $
    imazh = `ls -1 -b -R" $ directory "| grep -i -e ".png" -e ".jpg" -e ".jpeg" renditje –renditje-renditje | kokë -1`

    # E RNDSISHME! Nëse vëreni se po filtrojmë të gjitha skedarët me "shtrirje" .png, .jpg, .jpeg. Shto -e ".zgjatje" sipas rastit.
    # Shembull:
    # imazh = `ls -1 -b -R" $ direktori "| grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".new_extension" | renditje –renditje-renditje | kokë -1`

    # Ne marrim shtegun e $ image
    image_dir = `gjeni" $ directory "-iname" $ ​​image "`
    }

    # Rezolucioni i imazhit
    #Ky funksion merr rezolucionin e imazhit të marrë nga funksioni rand_imagen ()
    funksioni image_resolution ()
    {
    rand_image
    # Ne marrim lartësinë e imazhit $
    high_image = `identifikoni -formatin"% h "" $ image_dir "`
    # Ne marrim gjerësinë e imazhit $
    wide_image = `identifikoni -formatin"% w "" $ image_dir "`
    }

    # Ne marrim raportin imazh_rezolucion / ekran_rezolucion
    # rezultati i kësaj pjestimi kthen një vlerë më të madhe ose më të vogël se 1
    # proporcion 1 imazhi është më i madh se ekrani
    proporcioni i funksionit ()
    {
    zgjidhja ime
    rezolucioni i imazhit
    ratio_high = `jehonë $ image_high / $ my_high | bc -l`
    gjerësia_ proporcion = = jehonë $ width_image / $ gjerësia ime | pc-l "
    }

    #Ne marrim raportin e gjerësisë së imazhit_ të lartë / figurës
    # rezultati i kësaj pjestimi kthen një vlerë më të madhe ose më të vogël se 1; Nëse imazhi nuk është katror Oo
    # proporcioni_figurës 1 imazhi është më i gjatë se sa i gjerë
    proporcioni i figurës së funksionit ()
    {
    rezolucioni i imazhit
    ratio_image_reason = "jehonë $ tall_image / $ wide_image | pc -l"
    }

    # Vendos sfondin
    # Ky funksion modifikon parametrat e azotit sipas vetive të imazhit në raport me monitorin
    # Imazhi shumë i gjatë ose më i madh se ekrani ynë Vendos sfondin duke shkallëzuar imazhin
    # –Qendra e vendosur në qendër të imazhit të pak shkallëzuar
    # –Set-scaled mbush ekranin me imazhin e deformuar
    # –So-zoom mbush ekranin me imazhin e shkallëzuar në krye
    # –Set-zoom-mbush mbush ekranin me imazhin e shkallëzuar së bashku
    funksioni skalar ()
    {
    pjesë
    nëse [`echo" $ width_proportion> 1 ″ | bc` -eq 1]; atëherë
    # Nëse rezolucioni i imazhit është më i madh se ai i ekranit tonë, ekzekutoni ...
    azot - "$ image_dir" i shkallëzuar
    tjetër
    nëse [`echo" $ high_rate> 1 ″ | bc` -eq 1]; atëherë
    # Nëse rezolucioni i imazhit është më i vogël se ai i ekranit tonë, ekzekutoni ...
    azoti "$ image_dir" i përqendruar në vendosje
    tjetër
    # Kur imazhi është më i vogël se ekrani, ne mund ta zgjerojmë atë në gjatësi ose gjerësi
    proporcioni i imazhit
    nëse [`jehona« $ proporcioni_fotografi_arsyeja> 1 ″ | bc` -eq 1]; atëherë
    # Nëse lartësia e imazhit është më e vogël se ajo e ekranit tonë, ekzekutoni ...
    azot - zmadhimi i "$ image_dir"
    tjetër
    nëse [`jehona« $ proporcioni_imazhi_arsye <1 "| bc` -eq 1]; atëherë
    # Nëse gjerësia e imazhit është më e vogël se ajo e ekranit tonë, ekzekutoni ...
    azot - vendos-zoom-plotëso "$ image_dir"
    fi
    fi
    fi
    fi
    }

    ngjiten

    dalje

    1.    Halonsus V dijo

      Shkëlqyeshëm Faleminderit.