Preveniți repausul sistemului în timp ce un proces sau o comandă este activă în Mac OS X
Mulți utilizatori de Mac folosesc utilitare pentru a împiedica temporar computerul lor să intre în somn, bazându-se adesea pe colțurile de somn, instrumentul terță parte numit Coffeine, pmset sau, mai recent, utilitarul de linie de comandă care este acum la pachet cu OS X numit cofeinat. În mod implicit, elementul din bara de meniu Cafeină și comanda cafeinate vor împiedica somnul atâta timp cât sunt activate individual, foarte utile pentru utilizatorii de desktop pe un Mac, dar nu deosebit de utile dacă doriți să aveți funcția de somn OS X dependent de finalizarea unui anumit proces sau sarcină.
Asta vom acoperi aici folosind linia de comandă, care are o prevenire a somnului dependentă de proces care blochează doar funcția de repaus pentru Mac în timp ce o comandă, sarcină sau proces specificată rulează sau activ, apoi, când este terminat, computerul va restabili obiceiurile tradiționale de somn.
Pentru a realiza evitarea somnului specifică comenzii, vom folosi o variantă a comenzii de cofeinat, care poate preveni somnul într-o varietate de moduri. Vom parcurge câteva exemple, dar pagina de manual a cafeinatului oferă câteva opțiuni suplimentare care pot fi de dorit și pentru alte situații.
În scopul nostru de a face ca prevenirea somnului să depindă de finalizarea unei anumite comenzi sau procese, veți folosi steag-ul -i așa:
cofeinat -i
Este posibil să fie deja evident, dar executarea comenzii cafeinate astfel va porni și comanda sau procesul specificat în argument.
De exemplu, dacă doriți ca Mac-ul să evite somnul când comanda „make” este activă, ați folosi următoarea sintaxă a comenzii:
cofeinat -i fac
Sau poate doriți doar să preveniți somnul în timp ce o conexiune ssh este activă la un anumit server și doriți să trimiteți comanda coffeinate în fundal, apoi ați aplica un ampersand la sfârșit ca bine asa:
cafeinat -i ssh cafea boabe &
Puteți chiar să rulați acest lucru cu propriile scripturi sau comenzi în altă locație:
caffeinate -i /private/tmp/./whatisthis.sh
Sau pentru a avea prevenția somnului activă atâta timp cât browserul web Safari rulează în GUI, veți folosi următoarea sintaxă, rețineți că trebuie să specificați calea completă către binar în fișierul .app :
caffeinate -i /Applications/Safari.app/Resources/MacOS/Safari
Stabulatorul -i previne starea de repaus a sistemului, dar puteți folosi alte steaguri pentru a crea aserțiuni pentru a preveni, de asemenea, repausul discului sau al afișajului. Pentru a preveni oprirea afișajului (adică oprirea ecranului și trecerea în modul blocat sau în economizor de ecran), este nevoie de marcajul -d:
cafeinizat
La fel ca marcajul -i, acest lucru se poate aplica oricărei sarcini de sistem, indiferent dacă este rulat din linia de comandă sau din GUI, asigurați-vă că specificați numele corect cu majuscule adecvate. Alt exemplu:
caffeinate -d telnet towel.blinkenlights.nl
Această comandă înseamnă că atâta timp cât Telnetul pentru filmul ASCII Star Wars este activ, afișajul Mac-ului nu va dormi. Dacă telnetul este oprit sau Star Wars s-a terminat de jucat, sistemul poate dormi așa cum este permis de obicei, definit de setările de somn și energie în OS X.
Desigur, deoarece cofeinatul se bazează în întregime pe linia de comandă, nu va fi aplicabil tuturor utilizatorilor, dar pentru cei care petrec mult timp în Terminal, poate fi un truc grozav. Pentru utilizatorii de Mac care se simt mai confortabil în interfața grafică cu utilizatorul, un colț eficient împotriva somnului și utilizarea aplicației Coffeine sunt probabil cele mai bune pariuri pentru a îndeplini funcții similare.
Dacă doriți să efectuați o sarcină similară dependentă de proces, dar evitați terminalul și linia de comandă, aplicația Wimoweh realizează același lucru ca un meniu derulant, deși este o aplicație plătită care poate o face mai puțin dorită pentru unii utilizatori și nu oferă un proces general sau un argument de finalizare a sarcinii bazat pe linia de comandă. Astfel, cofeinatul cu un steag adecvat este încă preferat de mulți.