Megakadályozza az alvást a szkriptekben

Van-e valamilyen módja annak, hogy megakadályozzuk a Windows alvást, amíg a program fut a parancssoron vagy a Cygwinnel? Ideális esetben remélem, hogy valami használható, például:

szkriptekben

háttér

Néha olyan hosszú munkákat kezdek el, mint a kézi biztonsági mentés vagy a nagy fájlátvitel, és megállapítottam, hogy a Windows gyakran alszik, mielőtt elkészülnének. Szeretném tudni elindítani a parancsot, és megakadályozni a hibernálást a parancs futása közben, de azt akarom, hogy a parancs befejezése után automatikusan újra működjön.

A powercfg parancsfájljával megváltoztathatja azt az időt, amelyet a PC alvás előtt vár:

Soha ne menjen készenléti üzemmódba:

Váltás készenléti üzemmódba 15 perc alatt:

Itt van egy bash forgatókönyv, amelyet a harrymc válasza alapján készítettem.

nosleep Most van egy ilyen parancs Cygwin-ben. Csak telepítse a nosleep csomagot, és futtassa a-ként

Írta: Andrew E. Schulman 2011-ben. Lásd: https://cygwin.com/ml/cygwin/2011-09/msg00151.html

A forrás az indítópulton. A SetThreadExecutionState () -et használja (mint a korábban említett Insomnia), nem hoz létre külön energiasémát.

Vegye figyelembe, hogy ez megakadályozza, hogy a rendszer üresjáratban automatikusan hibernált állapotba kerüljön, és nem a rendszer hibernálásba lép a felhasználó kérésére (például egy laptop fedelének bezárásakor).

A @LorenzCK ebből a válaszból származó javaslata egy kapcsolódó kérdésre:

Használja a Prezentációs módot a Windows Mobilitási Központban (ha elérhető).

Ellenőrizze a powercfg -requests paranccsal a parancssorban. Kimenet:

Előnye, hogy kikapcsoláskor vagy újraindításkor törlődik. Most már nem kell aggódnia az eredeti energiabeállítások mentése és visszaállítása miatt 👍