नायट्रोजनसह वॉलपेपर स्वयंचलितपणे बदला

तुमच्यातील किती लोक "टाइलिंग विंडो मॅनेजर" वापरतात आणि थोड्या वेळाने आमचे वॉलपेपर आम्हाला कंटाळले? एक साधा वॉलपेपर बदलण्यात सक्षम होण्यासाठी पुन्हा-कंपाईल करणे किंवा पुन्हा “नायट्रोजन” चालवणे आणि त्यास दुसरे पॅरामीटर पास करणे खूप त्रासदायक आहे.

बरं, आज मी तुमच्यासाठी बॅश स्क्रिप्ट आणत आहे, ती आमच्या संग्रहातून यादृच्छिक प्रतिमा मिळवते आणि वॉलपेपर म्हणून ठेवते नायट्रोजन वॉलपेपर बदला, आपण स्क्रिप्ट डाउनलोड केल्यास येथे फाईलमधून .txt विस्तार काढून टाकण्यास आणि त्यास अमलात आणण्यास परवानगी देण्यास विसरू नका

निर्देशिका = ~ / प्रतिमा कार्य करते माझे_प्रमाण () {res = `xrandr | ग्रेप '*' | grep -o -E '[०-]] + x [०-]] +' `my_high =` प्रतिध्वनी "$ रे" | कट-डी "x" -f 0` माय_विड्थ = `इको" $ रे "| कट-डी "x" -f 9`} फंक्शन रँड_इमेज () {image = `ls -0 -b -R" $ निर्देशिका "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | क्रमवारी लावा - रँडम-सॉर्ट | head -9` image_dir = `" $ निर्देशिका "-iname" $ ​​image "`} फंक्शन image_resolution () {rand_image high_image = `ओळखी -फॉर्मेट"% h "" $ image_dir "` वाइड_मेज = `ओळख-फॉर्मेट"% w "शोधा "" $ इमेज_डिअर "`} फंक्शन रेश्यो () {माय_रेश्शन इमेज_ रेसोल्यूशन उंची_संख्या = = cho इको $ इमेज_हिघ / $ माय_हिघळ [cho प्रतिध्वनी "$ गुणोत्तर_उच्च> 2" | बीसीए -एक्यू 1 -o` प्रतिध्वनी "$ गुणोत्तर_विड्थ> 1" | बीसीए -एक्यू 1]; नंतर नायट्रोजन --set-झूम "$ image_dir" अन्यथा नायट्रोजन --सेट-केंद्रित "$ image_dir" फाय} स्केल बाहेर पडा

आता स्क्रिप्ट स्पष्टीकरण येतो.
निर्देशिका = ~ / प्रतिमा // जेथे आपले वॉलपेपर स्थित आहेत त्या डिरेक्टरीमध्ये बदला

प्रतिमा_निश्चिती () // हे फंक्शन आमच्या मॉनिटरचे रेझोल्यूशन शोधते आणि त्यास व्हेरिएबल्समध्ये सेव्ह करते:
माझे_अधिक // उच्च
माझे_विड्थ // रुंदी

रँड_मेज () // या फंक्शनला "डिरेक्टरी" मध्ये एक इमेज मिळते.

image = `ls -1 -b -R" $ निर्देशिका "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | क्रमवारी लावणे-क्रमवारी | डोके -1`

महत्त्वपूर्ण! आपल्या लक्षात आल्यास आम्ही "विस्तार" .png, .jpg, .jpeg सह सर्व फायली फिल्टर करीत आहोत. योग्य म्हणून ". विस्तार" जोडा.

उदाहरण:

imagen=`ls -1 -b -R "$directorio" | grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".nueva_extensión" | sort --random-sort | head -1`

प्रतिमा_निश्चिती () // हे फंक्शन रँड_इमेज () फंक्शनद्वारे प्राप्त प्रतिमेचे रेझोल्यूशन प्राप्त करते

प्रमाण () // या फंक्शनला इमेज_रेसोल्यूशन / स्क्रीन_ रेसोल्यूशन रेश्यो मिळेल

चढणे () // हे कार्य आमच्या मॉनिटरच्या रेजोल्यूशनपेक्षा मोठे असल्यास आणि वॉलपेपर सेट करते तर हे कार्य प्रतिमांना आकर्षित करते

आता जेव्हा आपल्याकडे नायट्रोजनला यादृच्छिक वॉलपेपर नियुक्त करण्यासाठी स्क्रिप्ट आहे (तसेच प्रतिमा आपल्या मॉनिटरवर देखील रुपांतर करते) आपल्याला फक्त पटकथा पटकन चालवावी लागते, स्टार्टअपच्या वेळी खालील आदेश चालवून हे साध्य केले जाते.

watch -n 4 ruta_donde_se_encuentra_el_script/nombre_del_script

या प्रकरणात, ही आज्ञा प्रत्येक 4 सेकंदात कार्यान्वित केली जाते, हे लक्षात घ्या की पथ_कथित_स_स्क्रिप्ट_इस_फाउंड हा संपूर्ण मार्ग आहे जेथे स्क्रिप्ट स्थित आहे आणि स्क्रिप्टलानाव स्क्रिप्टला दिले गेलेले नाव आहे.

मी आशा करतो की आपल्याला ते उपयुक्त वाटेल.


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

  1.   केझेडकेजी ^ गारा म्हणाले

    मला हे करू इच्छित असलेल्या केडीई स्क्रिप्टसाठी मी हे नायट्रोजन तपासणार आहे :)
    अन्यथा चांगली पोस्ट ... हाहााहा, पोस्टसाठी आपण निवडलेला उत्कृष्ट फोटो (स्नूपीचा एलओएल !!!)

    1.    alpj म्हणाले

      झज्जाज्जाजाजा धन्यवाद, खरंच स्नोपी रॅफल, हज्जाज्जाज्जाज

  2.   st0rmt4il म्हणाले

    धन्यवाद..

  3.   रुंदी म्हणाले

    धन्यवाद

  4.   फर्चेटल म्हणाले

    धन्यवाद!

  5.   izzyvp म्हणाले

    हे दालचिनीसाठी योग्यरित्या कार्य करत नाही?

    1.    alpj म्हणाले

      दालचिनीमध्ये वॉलपेपर कसे बदलायचे याची मला कल्पना नाही, परंतु खात्रीची गोष्ट अशी आहे की रँड_इमेज फंक्शन यादृच्छिक प्रतिमा मिळविण्यासाठी आपल्याला सेवा देतो, म्हणून आपल्याला फक्त ते पास करावे लागेल ir dir_image
      मी चौकशी करू

  6.   + एएमईएम + म्हणाले

    धन्यवाद, भावी पिढ्यांसाठी मी त्यात थोडेसे बदल केले ... मला आशा आहे की तुम्ही त्रास देत नाही
    आपण काय विचार करता हे मला जाणून घ्यायचे आहे, भाषेबद्दल मला जास्त माहिती नाही

    #! / बिन / बॅश

    # ~ मूळ लेखक
    #~
    # ~ हॅलोन्सोव्ह: गणितज्ञ, जीएनयू / लिनक्स प्रेमी, प्रोग्रामर, डेबियन आणि एक्समोनाड वापरकर्ता.
    #~
    #. संदर्भ
    #~ https://blog.desdelinux.net/cambiar-automaticamente-el-fondo-de-pantalla-con-nitrogen/
    #~
    # Every दर 120 सेकंदाला स्क्रिप्ट चालवण्याची आज्ञा
    # ~ वॉच -एन 120 / होमे /एम / बॅकअप / डेटाटाँचा / सॅनॅप्टिक / रँडमवॉलपेपर.श
    #~
    # ~ सहयोग
    # ~ + एएमईएम +
    # On जागा वापरु नये म्हणून मी फक्त एकदाच याचा वापर करण्यास प्राधान्य देतो
    # aut autostart.sh मध्ये जोडत आहे
    # ~ /home/amem/backup/DataCrunch/Synaptic/RandomWallpaper.sh &
    # ~ वैयक्तिक टीप
    # ~ ही स्क्रिप्ट मूळतः हलोनसोव्ह यांनी बनविली होती.
    # ~ मी त्यात बदल केले जेणेकरून थोडेसेच, # क्रंचबॅंगच्या सुरूवातीस हे चालविण्यासाठी!
    # ~ उद्देश असा आहे की आपल्या डिस्कवर असलेल्या सर्व प्रतिमा आपण त्या पाहू शकता
    # ~ प्रत्येक वेळेस आणि ते त्यांच्या गुणधर्मानुसार स्क्रीनशी जुळतात.
    या स्क्रिप्टसाठी आपल्या मॉनिटरची वैशिष्ट्ये ओळखली जातात,
    # ~ आणि आपल्या «निर्देशिका» च्या प्रतिमेचा किंवा फोटोचा,
    # नायट्रोजन अंमलात आणण्यासाठी + स्केलिंग किंवा झूम पॅरामीटर टाळणे
    # ~ वाढवलेली, पिक्सेलॅट प्रतिमा.
    # ~ ही स्क्रिप्ट आपल्या गरजा भागवत नसल्यास आपण त्याचे पॅरामीटर्स सुधारित करू शकता
    # ~ उदा. नायट्रोजन-केंद्रित
    # स्केलिंगशिवाय प्रतिमा मध्यभागी ठेवण्यासाठी
    # ~ मी शिफारस करतो की आपण नायट्रोजन मॅन्युअलचा अभ्यास करा.

    # निर्देशिका
    उपनिर्देशिकांसह वॉलपेपर म्हणून वापरल्या जाणार्‍या प्रतिमांची # निर्देशिका
    # आपले वॉलपेपर कुठे आहेत त्या डिरेक्टरीमध्ये बदला
    # उदा. निर्देशिका / / मुख्यपृष्ठ /… / प्रतिमा
    निर्देशिका = / मुख्यपृष्ठ / अमेम / प्रतिमा / वॉलपेपर

    # मॉनिटर रिझोल्यूशन
    # हे कार्य आमच्या मॉनिटरचे रेझोल्यूशन शोधते आणि त्यास व्हेरिएबल्समध्ये सेव्ह करते:
    कार्य माझे_निश्चिती ()
    {
    # आम्ही एक्सरेन्डरद्वारे आमच्या मॉनिटरची रेझोल्यूशन प्राप्त करतो
    res = ra xrandr | ग्रेप '*' | grep -o -E '[०-]] + x [०-]] +' `
    # मॉनिटरची उंची
    my_high = cho प्रतिध्वनी "$ रे" | | कट-डी "x" -फ 2`
    # मॉनिटर रुंदी
    my_width = `प्रतिध्वनी" $ रे "| | कट-डी "x" -फ 1`
    }

    # रँडम प्रतिमा
    # या फंक्शनला "डिरेक्टरी" मध्ये एक इमेज मिळते.
    फंक्शन रँड_मेज ()
    {
    # आम्हाला image निर्देशिकेत काही प्रतिमांचे नाव मिळते
    image = `ls -1 -b -R" $ निर्देशिका "| grep -i -e ".png" -e ".jpg" -e ".jpeg" | क्रमवारी लावणे-क्रमवारी | डोके -1`

    # महत्त्वाचे! आपल्या लक्षात आल्यास आम्ही "विस्तार" .png, .jpg, .jpeg सह सर्व फायली फिल्टर करीत आहोत. योग्य म्हणून ". विस्तार" जोडा.
    # उदाहरण:
    # प्रतिमा = `ls -1 -b -R" $ निर्देशिका "| grep -i -e ".png" -e ".jpg" -e ".jpeg" -e ".नवी_ विस्तार" | क्रमवारी लावणे-क्रमवारी | डोके -1`

    # आम्हाला $ प्रतिमेचा मार्ग मिळेल
    image_dir = `" $ निर्देशिका "-नाम" $ प्रतिमा "` शोधा
    }

    # प्रतिमा निराकरण
    # हे फंक्शन रँड_इमेजेन () फंक्शनद्वारे प्राप्त प्रतिमेचे रेझोल्यूशन प्राप्त करते
    कार्य प्रतिमा_निश्चिती ()
    {
    रँड_मागे
    # आम्हाला $ प्रतिमेची उंची मिळेल
    हाय_इमेज = `-फॉर्मेट"% एच "" $ इमेज_डिर "`
    # आम्हाला $ प्रतिमेची रूंदी मिळते
    image_width = `" -% "" फॉर्मेट $ image_dir "forma
    }

    # आम्हाला प्रतिमेची प्रतिमा_उत्पत्ति / स्क्रीन_उत्पादन मिळेल
    # या प्रभागाचा परिणाम 1 पेक्षा कमी किंवा त्यापेक्षा कमी मूल्य मिळविते
    # प्रमाण 1 प्रतिमा स्क्रीनपेक्षा मोठी आहे
    कार्य प्रमाण ()
    {
    माझे_निश्चिती
    प्रतिमा_निश्चिती
    गुणोत्तर_उघरा = cho प्रतिध्वनी $ प्रतिमा_अधिक / $ माय_हिघ | बीसी -एल`
    रुंदी_संख्या = = प्रतिध्वनी $ रुंदी_प्रतिमा / $ माय_विड्थ | बीसी -एल`
    }

    # आम्हाला प्रतिमेची प्रतिमा_उच्च / प्रतिमा_विड्थ मिळते
    # या प्रभागाचा परिणाम 1 पेक्षा कमी किंवा त्यापेक्षा कमी मूल्य मिळविते; जोपर्यंत प्रतिमा वर्ग ओओ नाही
    # प्रतिमा_संख्या 1 प्रतिमा रूंदीपेक्षा उंच आहे
    कार्य प्रतिमा प्रमाण ()
    {
    प्रतिमा_निश्चिती
    गुणोत्तर_मागे_दर = cho प्रतिध्वनी $ उंच_मागे / $ रुंद_चित्र_ बीसी -एल`
    }

    # वॉलपेपर सेट करा
    # हे कार्य मॉनिटरच्या संबंधात प्रतिमांच्या गुणधर्मांनुसार नायट्रोजन मापदंडांमध्ये बदल करते
    # आमच्या स्क्रीनपेक्षा खूपच उंच किंवा मोठी प्रतिमा प्रतिमा स्केल करून वॉलपेपर सेट करते
    # -सेट-केंद्रीत नसलेली प्रतिमा केंद्रित करते
    # – सेट-स्केल्ड रेड इमेजसह स्क्रीन भरते
    # – सेट-झूमने स्केल केलेल्या प्रतिमेसह स्क्रीन भरते
    # – सेट-झूम-फिल स्केल केलेल्या प्रतिमेसह स्क्रीन भरते
    फंक्शन स्केलर ()
    {
    प्रमाण
    जर [`प्रतिध्वनी" $ रुंदी_संख्या> 1 b | बीसी` -एक्यू 1]; मग
    # प्रतिमेचे रिझोल्यूशन आमच्या स्क्रीनपेक्षा मोठे असल्यास, कार्यवाही करा ...
    नायट्रोजन -सेट-स्केल्ड "$ image_dir"
    आणखी
    जर [`प्रतिध्वनी" $ उच्च_रेट> 1 ″ | बीसी`-ईक्यू 1]; मग
    # जर प्रतिमेचे रेझोल्यूशन आमच्या स्क्रीनपेक्षा छोटे असेल तर, कार्यान्वित करा ...
    नायट्रोजन –सेट-केंद्रित "$ image_dir"
    आणखी
    # जेव्हा प्रतिमा स्क्रीनपेक्षा लहान असते तेव्हा आम्ही ती लांबी किंवा रुंदीपर्यंत वाढवू शकतो
    प्रतिमा प्रमाण
    जर [`प्रतिध्वनी« $ अनुपात_ge_reason> 1 ″ | bc` -eq 1]; मग
    # प्रतिमेची उंची आमच्या स्क्रीनपेक्षा लहान असेल तर चालवा ...
    नायट्रोजन –set-zoom "$ image_dir"
    आणखी
    जर [cho प्रतिध्वनी «$ अनुपातिक__कारण <1" | बीसी`-ईक्यू 1]; तर
    # प्रतिमेची रूंदी आमच्या स्क्रीनपेक्षा लहान असेल तर चालवा ...
    नायट्रोजन -सेट-झूम-फिल "$ image_dir"
    fi
    fi
    fi
    fi
    }

    चढणे

    बाहेर पडा

    1.    हॅलोन्सो व्ही म्हणाले

      उत्कृष्ट धन्यवाद.