
Есть ли эквивалент этой caffeinate
утилиты для Windows на OS X? Я хочу иметь довольно агрессивные настройки выхода в целом, но иметь специальную программу, которая предотвращает выход во время работы, как способ переопределения этой настройки.
Утилита caffeinate
предотвращает выход из системы, пока она активна, что приятно. caffeinate
— это программа на языке C, распространяемая Apple. Исходный код для нее —здесь.
Я нашел скрипт Powershell, который примерно эквивалентен этомуздесьи использовали его тривиальную модификацию, показанную ниже.
param($minutes = 36000)
$myshell = New-Object -com "Wscript.Shell"
for ($i = 0; $i -lt $minutes; $i++) {
Start-Sleep -Seconds 60
$myshell.sendkeys(".")
}
По умолчанию он отправляет .
нажатие клавиши графической оболочке (и, следовательно, любому приложению, имеющему фокус) один раз в минуту в течение 10 часов.
Это значит, что вам придется быть бдительным при наборе текста, иначе .
раз в минуту будут появляться случайные символы, что далеко от идеала.
Есть ли более элегантный способ написать программу, которая отключает выход из системы, но только во время ее работы?
решение1
У Windows PowerToys есть приложение под названием Awake. Есть как GUI, так и CLI-опция.
PowerToys Awake не изменяет никаких настроек плана электропитания Windows и не зависит от конфигурации пользовательского плана электропитания. Вместо этого он порождает фоновые потоки, которые сообщают Windows, что им требуется определенное состояние машины.
PowerToys Awake — это утилита для Windows, разработанная для поддержания компьютера в состоянии бодрствования без необходимости управления его параметрами питания и сна. Такое поведение может быть полезным при выполнении длительных задач, гарантируя, что компьютер не перейдет в спящий режим или не выключит экраны.