Automātiski mainīt fonu, izmantojot slāpekli

Cik daudzi no jums izmanto "Flīžu logu pārvaldnieku" un, protams, pēc kāda laika mūsu tapetes mūs garlaiko? Ir ļoti nepatīkami, ka nākas apkopot, lai varētu mainīt vienkāršu fonu vai pat atkal palaist “slāpekli” un tam nodot citu parametru.

Nu, šodien es jums atvedu bash skriptu, tas iegūst nejaušu attēlu no mūsu kolekcijas un ievieto to kā fonu Mainīt slāpekļa tapetes, ja skriptu lejupielādējat no šeit neaizmirstiet noņemt .txt paplašinājumu no faila un piešķirt tam izpildes atļaujas

directory = ~ / Attēli funkcija my_resolution () {res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' 'my_high = `atbalss" $ res "| izgriezt -d "x" -f 2` my_width = `atbalss" $ res "| cut -d "x" -f 1`} funkcija rand_image () {image = "ls -1 -b -R" $ direktorija "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | kārtot - nejauši-kārtot | head -1` image_dir = `atrast" $ direktoriju "-inam" $ image ""} funkcija image_resolution () {rand_image high_image = "identificēt -formāts"% h "" $ image_dir "" wide_image = `identificēt -formātu" % w "" $ image_dir "`} funkciju proporcija () {my_resolution image_resolution height_rate = `echo $ image_high / $ my_high | bc -l` proport_width =` echo $ image_width / $ my_width | bc -l`} funkcija skalārs () { proporcija, ja [`echo" $ ratio_high> 1 "| bc` -eq 1 -o` echo" $ ratio_width> 1 "| bc` -eq 1]; tad slāpeklis - iestatiet tālummaiņu "$ image_dir", citādi slāpeklis - iestatiet centrētu "$ image_dir" fi} skalas izeju

Tagad nāk skripta skaidrojums.
direktorija = ~ / Attēli // Pārslēdzieties uz direktoriju, kurā atrodas jūsu fona attēli

image_resolution () // Šī funkcija nosaka mūsu monitora izšķirtspēju un saglabā to mainīgajos:
my_high // Augsta
my_width // Platums

rand_image () // Šī funkcija iegūst attēlu direktorijā

image = `ls -1 -b -R" $ direktorija "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | kārtot –pastāvīgi-kārtot | galva -1 "

SVARĪGS! Ja pamanāt, ka mēs filtrējam visus failus ar paplašinājumu .png, .jpg, .jpeg. Pēc vajadzības pievienojiet -e ".extension".

piemērs:

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 () // Šī funkcija iegūst attēla izšķirtspēju, kas iegūta, izmantojot funkciju rand_image ()

proporcija () // Šī funkcija iegūst attiecību image_resolution / screen_resolution

kāpt () // Šī funkcija mērogo attēlu, ja tas ir lielāks par mūsu monitora izšķirtspēju, un iestata fonu

Tagad, kad mums ir skripts, lai slāpeklim piešķirtu nejaušas fona tapetes (un arī attēls pielāgojas jūsu monitoram), skripts ir jāpalaiž tikai tik bieži, tas tiek panākts, startējot izpildot šādu komandu

watch -n 4 ruta_donde_se_encuentra_el_script/nombre_del_script

Šajā gadījumā šī komanda tiek izpildīta ik pēc 4 sekundēm. Ņemiet vērā, ka path_where_the_script_is_found ir pilns ceļš, kurā atrodas skripts, un script_name ir nosaukums, kas tika piešķirts skriptam.

Es ceru, ka jums tas noderēs.


9 komentāri, atstājiet savus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   KZKG ^ Gaara teica

    Es pārbaudīšu, vai šajā slāpeklī nav KDE skripta, kuru vēlos darīt :)
    Citādi labs ieraksts ... hahahaha, lieliska fotogrāfija, kuru esat izvēlējies ziņai (Snoopy's LOL !!!)

    1.    alpj teica

      Jjajajajjajajaja paldies, patiešām snoopy izloze, hahajjajajajjajaj

  2.   str0rmt4il teica

    Paldies..

  3.   PLATUMS teica

    Gracias

  4.   fermetāls teica

    Gracias!

  5.   izzyvp teica

    Kanēlim tas neder, vai ne?

    1.    alpj teica

      Man nav ne jausmas, kā mainīt fona attēlu kanēlī, bet pārliecība ir tāda, ka funkcija rand_image darbojas, lai iegūtu nejaušu attēlu, tāpēc jums tas vienkārši jānodod
      Ļaujiet man izmeklēt

  6.   + AMEM + teica

    Paldies, es to nedaudz pārveidoju nākamajām paaudzēm ... Es ceru, ka jūs netraucējat
    Es gribētu zināt, ko jūs domājat, es daudz nezinu par valodu

    #! / bin / bash

    # ~ Sākotnējais autors
    #~
    # ~ halonsovs: matemātiķis, GNU / LINUX mīļākais, programmētājs, Debian un xmonad lietotājs.
    #~
    # ~ Atsauces
    #~ https://blog.desdelinux.net/cambiar-automaticamente-el-fondo-de-pantalla-con-nitrogen/
    #~
    # ~ Komanda palaist skriptu ik pēc 120 sekundēm
    # ~ skatīties -n 120 /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh
    #~
    # ~ Sadarbība
    # ~ + AMEM +
    # ~ Personīgi es gribētu to izmantot tikai vienu reizi, lai neizmantotu vietu
    # ~ pievienošana autostart.sh
    # ~ /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh &
    # ~ Personīgā piezīme
    # ~ šo skriptu sākotnēji veidoja halonsovs.
    # ~ Es to pārveidoju tā, lai tikai nedaudz izpildītu to #CrunchBang sākumā!
    # ~ mērķis ir, lai visi tie attēli, kas jums ir diskā, tos varētu redzēt
    # ~ tik bieži un ka viņi pielāgojas ekrānam atbilstoši savām īpašībām.
    # ~ šim skriptam ir noteiktas jūsu monitora īpašības,
    # ~ un jūsu «direktorija» attēla vai fotoattēla fotoattēli,
    # ~, lai izpildītu slāpekli + mēroga vai tālummaiņas parametru novēršanu
    # ~ iegareni, pikseļu attēli.
    # ~ Ja šis skripts neatbilst jūsu vajadzībām, varat modificēt tā parametrus
    # ~ Piemēram, uz slāpekli - centrēts
    # ~ lai centrētu attēlu bez mērogošanas
    # ~ Es iesaku jums izpētīt slāpekļa rokasgrāmatu.

    #Katalogs
    # Attēlu direktorijs, kas jāizmanto kā fona attēls, ieskaitot apakšdirektorijus
    # Mainiet direktoriju, kurā atrodas jūsu fona attēli
    # Piemēram, direktorija = / home /… / images
    direktorija = / home / amem / images / Wallpaper

    # Monitora izšķirtspēja
    # Šī funkcija nosaka mūsu monitora izšķirtspēju un saglabā to mainīgajos:
    funkcija my_resolution ()
    {
    # Mēs iegūstam mūsu monitora izšķirtspēju ar xrandr
    res = `xrandr | grep '*' | grep -o -E '[0-9] + x [0-9] +' '
    # Monitora augstums
    my_high = "atbalss" $ res "| sagriezts -d "x" -f 2`
    # Monitora platums
    my_width = "atbalss" $ res "| griezums -d "x" -f 1`
    }

    # Gadījuma attēls
    #Šī funkcija iegūst attēlu direktorijā
    funkcija rand_image ()
    {
    #Mēs iegūstam dažu attēlu nosaukumu direktorijā $
    image = `ls -1 -b -R" $ direktorija "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | kārtot –pastāvīgi-kārtot | galva -1 "

    #SVARĪGS! Ja pamanāt, ka mēs filtrējam visus failus ar paplašinājumiem .png, .jpg, .jpeg. Pēc vajadzības pievienojiet -e ".extension".
    #Piemērs:
    # image = "ls -1 -b -R" $ direktorija "| grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".new_extension" | kārtot –pastāvīgi-kārtot | galva -1 "

    #Mēs saņemam $ attēla ceļu
    image_dir = `atrast" $ direktoriju "-inam" $ image ""
    }

    # Attēla izšķirtspēja
    # Šī funkcija iegūst attēla izšķirtspēju, kas iegūta, izmantojot funkciju rand_imagen ()
    funkcija image_resolution ()
    {
    rand_image
    #Mēs iegūstam $ attēla augstumu
    high_image = "identificēt -formātu"% h "" $ image_dir ""
    #Mēs iegūstam $ attēla platumu
    image_width = "identificēt formātu"% w "" $ image_dir ""
    }

    # Mēs iegūstam attiecību image_resolution / screen_resolution
    # šī dalījuma rezultāts atgriež vērtību, kas lielāka vai mazāka par 1
    # proporcija 1 attēls ir lielāks nekā ekrāns
    funkciju proporcija ()
    {
    my_resolution
    image_resolution
    ratio_high = "atbalss $ image_high / $ my_high | bc -l"
    width_proportion = "atbalss $ width_image / $ my_width | bc -l"
    }

    # Mēs iegūstam attiecību image_high / image_width
    # šī dalījuma rezultāts atgriež vērtību, kas lielāka vai mazāka par 1; Ja vien attēls nav kvadrātveida Oo
    # image_proportion 1 attēls ir garāks nekā plats
    funkcijas attēla proporcija ()
    {
    image_resolution
    ratio_image_reason = "atbalss $ tall_image / $ wide_image | bc -l"
    }

    # Iestatiet fonu
    # Šī funkcija maina slāpekļa parametrus atbilstoši attēla īpašībām attiecībā pret monitoru
    # Attēls ir pārāk augsts vai lielāks par mūsu ekrānu. Iestata fonu, mērogojot attēlu
    # –Iestatījums centrē neskaaloto attēlu
    # –Set-scaled aizpilda ekrānu ar izliektu attēlu
    # –Set-zoom aizpilda ekrānu ar mērogotu attēlu uz augšu
    # –Set-zoom-fill aizpilda ekrānu ar mērogotu attēlu
    skalārā funkcija ()
    {
    proporcija
    ja ["echo" $ width_proportion> 1 ″ | bc` -eq 1]; pēc tam
    # Ja attēla izšķirtspēja ir lielāka nekā mūsu ekrāna izšķirtspēja, izpildiet ...
    slāpekļa iestatītā mērogā "$ image_dir"
    cits
    ja [`echo" $ high_rate> 1 "| bc`-eq 1]; pēc tam
    # Ja attēla izšķirtspēja ir mazāka nekā mūsu ekrāna izšķirtspēja, izpildiet ...
    uz slāpekli iestatīts centrs "$ image_dir"
    cits
    # Kad attēls ir mazāks par ekrānu, mēs to varam paplašināt līdz garumam vai platumam
    attēla proporcija
    ja [`atbalss« $ proportimage_reason> 1 ″ | bc` -eq 1]; pēc tam
    # Ja attēla augstums ir mazāks nekā mūsu ekrāna augstums, izpildiet ...
    slāpeklis - iestatiet tālummaiņu "$ image_dir"
    cits
    ja ["atbalss« $ proportimage_reason <1 "| bc` -eq 1]; tad
    # Ja attēla platums ir mazāks nekā mūsu ekrāna platums, izpildiet ...
    slāpeklis - iestatiet tālummaiņu "$ image_dir"
    fi
    fi
    fi
    fi
    }

    kāpt

    izeja

    1.    Halonss V teica

      Izcili. Paldies.