Förhindra system viloläge medan en process eller kommando är aktivt i Mac OS X
Många Mac-användare använder verktyg för att tillfälligt hindra deras dator från att sova, ofta beroende av sömnhörn, tredjepartsverktyget som heter Koffein, pmset, eller på senare tid kommandoradsverktyget som nu levereras med OS X som kallas koffeinat. Som standard kommer menyraden Koffein och kommandot koffein att förhindra sömn så länge de är individuellt aktiverade för, mycket användbart för datoranvändare på en Mac, men inte särskilt användbart om du vill ha OS X-sömnfunktionen beroende på slutförandet av en specifik process eller uppgift.
Det är vad vi kommer att täcka här genom att använda kommandoraden, som har processberoende sömnförhindrande som bara blockerar Mac-sömnfunktionen medan ett angivet kommando, uppgift eller process körs eller aktiv, och när den är klar kommer datorn att återställa traditionella sömnvanor.
För att uppnå kommandospecifikt sömnundvikande kommer vi att använda en variant av koffeinkommandot, som kan förhindra sömn på en mängd olika sätt. Vi kommer att gå igenom några exempel men mansidan för koffein innehåller några ytterligare alternativ som kan vara önskvärda för andra situationer också.
För våra syften här för att göra sömnförebyggandet beroende av slutförandet av ett specifikt kommando eller process, använder du flaggan -i som gillar så:
koffein -i
Till exempel, om du vill att Mac-datorn ska slippa sova när "make"-kommandot är aktivt, använder du följande kommandosyntax:
koffein -jag gör
Eller kanske du bara vill förhindra sömn medan en ssh-anslutning är aktiv till en specifik server, och du vill skicka koffeinkommandot i bakgrunden, så använder du ett et-tecken till slutet som väl sådär:
koffein -i ssh kaffebönor &
Du kan till och med köra detta med dina egna skript eller kommandon på en annan plats:
koffeinat -i /private/tmp/./whatisthis.sh
Eller för att ha sömnförebyggande aktiv så länge Safari-webbläsaren körs i det grafiska användargränssnittet, skulle du använda följande syntax, observera att du måste ange den fullständiga sökvägen till binären i .app-filen :
caffeinate -i /Applications/Safari.app/Resources/MacOS/Safari
-i-flaggan förhindrar system viloläge, men du kan använda andra flaggor för att skapa påståenden för att förhindra att disk eller skärm vila också. För att förhindra skärmsömn (det vill säga att skärmen stängs av och går in i låst läge eller en skärmsläckare), behövs flaggan -d:
koffein -d
Liksom flaggan -i kan detta gälla för vilken systemuppgift som helst, oavsett om den körs från kommandoraden eller GUI, se bara till att ange rätt namn med skiftläge. Ett annat exempel:
koffein -d telnet handduk.blinkenlights.nl
Det kommandot betyder att så länge telnet till Star Wars ASCII-filmen är aktivt kommer Mac-skärmen inte att vila. Om telnet avslutas eller Star Wars har spelat klart, kan systemet sova som vanligtvis är tillåtet, definierat av viloläge och energiinställningar i OS X.
Självklart eftersom koffein är helt baserat på kommandoraden kommer det inte att vara tillämpligt på alla användare, men för de som tillbringar mycket tid i terminalen kan det vara ett bra knep. För Mac-användare som är mer bekväma i det grafiska användargränssnittet är ett effektivt hörn mot sömn och användning av Koffein-appen fortfarande de bästa valen för att utföra liknande funktioner.
Om du vill utföra en liknande processberoende uppgift men undvika terminalen och kommandoraden, åstadkommer Wimoweh-appen samma sak som en menyradsrullgardinsmeny, även om det är en betalapp som kan gör det mindre önskvärt för vissa användare, och det erbjuder inte ett allmänt process- eller kommandoradsbaserat argument för att slutföra uppgifter. Således är koffein med en riktig flagga fortfarande att föredra av många.