2012-10-23 10 views
10

तो मेरे पास स्क्रिप्ट का संग्रह है जिसका उपयोग बूट, स्क्रीनसेवर और रिमोट कंट्रोल जैसी कुछ घटनाओं के दौरान मेरे रिसीवर और टीवी पावर को नियंत्रित करने के लिए किया जाता है। इनमें से एक लॉगिन के दौरान निष्पादित किया जाता है लेकिन यह बात शायद मैं स्क्रिप्ट को चलाने के लिए नहीं चाहता हूं जब मशीन को चालू करने के लिए निर्धारित किया जाता है। स्टार्टअप ऐप्स के निष्पादन के दौरान रिक्त = 0 होने पर ईवेंट को अनदेखा करने के लिए मेरे पास तर्क है, इसलिए यह बूट या शट डाउन के दौरान आईआर नहीं भेजेगा। क्रॉन के उपयोग के माध्यम से मैं इसे कैसे पूरा कर सकता हूं? मैं क्रॉन चुनता हूं क्योंकि ये घटनाएं स्टार्टअप अनुप्रयोगों से पहले होती हैं। क्रॉन बहुत बढ़िया है लेकिन जहां तक ​​मैं समझता हूं कि मैं केवल बूट या शेड्यूल पर ही चला सकता हूं। मुझे टाइम वैरिएबल स्क्रिप्ट करने की ज़रूरत है लेकिन मुझे यकीन नहीं है कि कैसे।दिन के कुछ समय के दौरान क्रोन बूट स्क्रिप्ट केवल

syson.sh

#!/bin/sh 
cd /home/gilson585/ 
blanked=`cat blanked` 
if [ $blanked -eq 0 ] ; then 
    blanked=1;echo $blanked > blanked 
else 
    irsend SEND_ONCE VR4085DF KEY_POWER;irsend SEND_ONCE Kenwood_RC-R0813 power;blanked=0;echo $blanked > blanked 
    sleep 1 
    irsend SEND_ONCE Kenwood_RC-R0813 cd/dvd 
fi 

sysoff.sh (एक स्टार्टअप एप्लिकेशन और स्क्रीन राज्य परिवर्तन के रूप में प्रवेश के दौरान कहा जाता है)

(lirc init.d स्क्रिप्ट और स्क्रीन स्थिति परिवर्तन के भाग के रूप शटडाउन के दौरान कहा जाता है)
#!/bin/sh 
cd /home/gilson585/ 
blanked=`cat blanked` 
if [ $blanked -eq 0 ] ; then 
    irsend SEND_ONCE Kenwood_RC-R0813 power;irsend SEND_ONCE VR4085DF KEY_POWER;blanked=1;echo $blanked > blanked 
fi 

xscreensaver.sh (स्क्रीनसेवर प्रहरी, प्रवेश के दौरान कहा जाता है)

#!/bin/bash 
cd /home/gilson585/ 
xscreensaver-command -watch| 
while read STATUS; do 
    case "$STATUS" in 
    BLANK*) 
     /home/gilson585/sysoff.sh;blanked=1;echo $blanked > blanked 
     ;; 
    UNBLANK*) 
     /home/gilson585/syson.sh;blanked=0;echo $blanked > blanked 
     ;; 
    esac 
done 
+3

लिपियों मैं झूठ बोलने वाला भी नहीं हूँ, यह काफी प्रभावशाली है! कोई भी मौका आप अपने सेटअप के बारे में अधिक जानकारी साझा कर सकते हैं? –

+0

हाँ लेकिन इसके लिए बहुत कुछ है और मुझे यकीन नहीं है कि इसे रखने का स्थान यहां है। शायद मैं इसे उबंटू मंचों पर पोस्ट करूंगा और इसे लिंक करूंगा। – gilson585

+3

आप एक्सएमएल फ़ाइल का उपयोग करके इसे कब और कब नहीं चलाना शेड्यूल करने के लिए इसे नियंत्रित करने का प्रयास कर सकते हैं? स्क्रिप्ट उस के माध्यम से छेड़छाड़ कर सकती है और इसे लॉजिक गेट (अगर) –

उत्तर

-1

आह। कम से कम, आप अब के लिए दो स्क्रिप्ट का उपयोग कर सकते हैं। समय सेटिंग सप्ताह/घंटे/मिनट/सेकंड/आदि की एक सूची है। आप इसे

42 * * * * /bin/execute/awesomescript.sh 

पैरामीटर के साथ सेट अप करें यह प्रत्येक घंटे के 42 मिनट पर कुछ निष्पादित करेगा। यह पृष्ठ एक व्याख्या यह है कि मैं मूल रूप से regurgitating किया जाएगा है: http://kvz.io/blog/2007/07/29/schedule-tasks-on-linux-using-crontab/

वहाँ भी है जैसे

42 9,12,15 * * * /bin/stuff/awesomestuff.sh 

कौन सा 09:42, 12:42 पर awesomestuff.sh क्या करेंगे, और 15:42

संबंधित मुद्दे