बैश स्क्रिप्ट के चलने पर मैक को सोने से रोकें, फिर इसे एक बार पूरा होने पर सामान्य रूप से सोने दें


12

मुझे अपना मैक मिल गया है रात के दौरान जागने और इसे वापस करने के लिए एक rsync चलाने के लिए। इसे एनर्जी सेवर> शेड्यूल के माध्यम से कॉन्फ़िगर किया गया है।

हालाँकि ऐसा लगता है कि इससे पहले कि यह कुछ भी कर सकता है सोने के लिए वापस जा रहा है, इसलिए मुझे बैश स्क्रिप्ट के निष्पादन के दौरान इसे रोकने की ज़रूरत है जो rsync से चलता है।

मुझे सबसे अच्छा तरीका लगा (यदि यह संभव है) स्लीप टाइमआउट को "कभी नहीं" सेट करने के लिए एक कमांड जारी करना है या बहुत लंबे समय से पहले यह rsyncs और फिर वापस सामान्य होने पर एक बार पूरा हो जाता है। क्या ऐसा करने का कोई बेहतर उपाय है?


सुपरसुसर पर होना चाहिए?
किम्विस

जवाबों:


17

Caffeinate

उदाहरण के लिए:

caffeinate -i rsync -avz someuser@somehost:somefolder /some/local/folder

मैन पेज से:

EXAMPLE
     caffeinate -i make
        caffeinate forks a process, execs "make" in it, and holds an
        assertion that prevents idle sleep as long as that process
        is running.

man caffeinateविवरण के लिए देखें।


10

मैक ओएस एक्स 10.8 (माउंटेन लायन) और बाद में

caffeinateकमांड का उपयोग करें । नाथन लोंग का जवाब देखें या man caffeinateविवरण के लिए।

मैक ओएस एक्स 10.7 (शेर) और पहले

यह मैनुअल पेज में दफन है, लेकिन नींद को रोकने के लिए pmset में एक बहुत ही सरल मोड है। यदि आप कमांड को निष्पादित करते हैं तो pmset noidleआपका मैक तब तक जागता रहेगा जब तक कि उस प्रक्रिया को मार नहीं दिया जाता है। यहाँ एक स्क्रिप्ट में इसका उपयोग करने का तरीका बताया गया है:

# launch process to prevent sleep and move it to the background
pmset noidle &
# save the process ID
PMSETPID=$!

... do stuff here ...
... don't fall asleep ...
... watch out for that tree!
... ok we're free and clear now ...

# kill pmset so the computer can sleep if it wants to
kill $PMSETPID

अपनी नींद की सेटिंग्स को बदलने के लिए pmset का उपयोग करने से बेहतर है, जिसे रूट एक्सेस की आवश्यकता होती है और (आप एक अच्छा नागरिक बनना चाहते हैं) वर्तमान सेटिंग्स का पता लगाने और उन्हें वापस करने के बाद उन्हें बदलने का कोई तरीका है।


2
pmset noidleपदावनत किया जाता है: मैन पेज कहता है This argument is deprecated in favor of caffeinate(8):। मेरा जवाब देखिए।
नाथन लॉन्ग

4

प्रयत्न, कोशिश

man pmset

:-)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.