Несколько методов реализации таймера выключения с примерами кода

Чтобы предоставить вам различные способы реализации таймера выключения, я представлю примеры кода на разных языках программирования. Однако обратите внимание, что для выполнения команды завершения работы системы обычно требуются права администратора в большинстве операционных систем.

  1. Python:

    import os
    import platform
    import time
    def shutdown_timer(minutes):
    if platform.system() == 'Windows':
        os.system(f'shutdown -s -t {minutes * 60}')
    elif platform.system() == 'Linux':
        os.system(f'sudo shutdown -P +{minutes}')
    elif platform.system() == 'Darwin':
        os.system(f'sudo shutdown -h +{minutes}')
    else:
        print("Unsupported operating system.")
    # Example usage: initiate shutdown after 30 minutes
    shutdown_timer(30)
  2. Bash (Linux/macOS):

    #!/bin/bash
    # Usage: ./shutdown_timer.sh <minutes>
    minutes=$1
    sleep $(($minutes * 60))
    shutdown -h now

    Сохраните приведенный выше код в файле с именем shutdown_timer.sh, сделайте его исполняемым (chmod +xshutdown_timer.sh) и выполните его с желаемым временем в минутах. (./shutdown_timer.sh 30).

  3. PowerShell (Windows):

    # Usage: .\shutdown_timer.ps1 <minutes>
    $minutes = $args[0]
    Start-Sleep -Seconds ($minutes * 60)
    Stop-Computer

    Сохраните приведенный выше код в файле с именем shutdown_timer.ps1и выполните его с нужным временем в минутах (.\shutdown_timer.ps1 30).

  4. Пакетный сценарий (Windows):

    @echo off
    REM Usage: shutdown_timer.bat <minutes>
    set /a minutes=%1
    ping 127.0.0.1 -n %minutes% > nul
    shutdown -s -f -t 00

    Сохраните приведенный выше код в файле с именем shutdown_timer.batи выполните его с нужным временем в минутах (shutdown_timer.bat 30).