5 способов как выключить компьютер через python без проблем
В данной статье мы рассмотрим, как использовать Python для выключения компьютера. Для этого мы будем использовать стандартную библиотеку Python — subprocess .
1. Импортирование библиотеки subprocess
Первым шагом необходимо импортировать библиотеку subprocess . Эта библиотека предоставляет механизм для выполнения внешних команд, таких как команды командной строки, из программы на Python.
import subprocess
2. Выполнение команды выключения
Следующим шагом нам понадобится выполнить команду выключения компьютера. В операционной системе Windows мы можем использовать команду shutdown , а в Linux — команду poweroff . Для выполнения команды выключения на Windows, используем следующий код:
subprocess.call(["shutdown", "/s", "/t", "0"])
Этот код вызывает внешнюю команду shutdown с аргументами /s (для выключения) и /t 0 (для немедленного выключения). Для выполнения команды выключения на Linux, используем следующий код:
subprocess.call(["poweroff"])
Этот код вызывает внешнюю команду poweroff , которая выключает компьютер в операционной системе Linux.
3. Запуск программы
Теперь, когда у нас есть код для выполнения команды выключения, мы можем запустить программу и выключить компьютер через Python. Просто вызовите функцию, в которую вы вставите соответствующий код.
def shutdown_computer(): subprocess.call(["shutdown", "/s", "/t", "0"]) shutdown_computer()
Вызов функции shutdown_computer() приведет к выполнению команды выключения.
4. Заключение
Теперь, используя библиотеку subprocess и соответствующие команды, мы можем легко выключить компьютер через Python. Важно помнить, что для выполнения команды выключения необходимы административные права, поэтому убедитесь, что запускаете программу с правами администратора. Не забывайте, что выключение компьютера без предупреждения может привести к потере несохраненной информации, поэтому убедитесь, что все данные сохранены перед выполнением команды выключения.
Python-сообщество
- Начало
- » GUI
- » Выключение компьютера по заданному времени
#1 Июнь 21, 2011 21:23:33
sanodin От: Зарегистрирован: 2011-06-16 Сообщения: 515 Репутация: 31 Профиль Отправить e-mail
Выключение компьютера по заданному времени
Слепил скрипт,прописываешь время в скрипте и запускаешь….в заданное время комп выключается
Хотел вывести в окно Tkinter но не могу найти как что бы время можно было в окне вводить а не в скрипте….видел много раз в других прогах как выпадает менюшка и там выбираешь час и минуты…не знаю как так сделать…подскажите…или пример приведите
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import Tkinter
import time
from os import geteuid,system
curtime = ''
clock = Tkinter.Label()
clock.pack()
strToFind=("01:10:00")
def tick():
global curtime
newtime = time.strftime('%H:%M:%S')
if newtime != curtime:
curtime = newtime
clock.config(text=curtime)
clock.after(200, tick)
line=curtime
if strToFind in line:
system("/usr/bin/shutdown -h now")
tick()
clock.mainloop()
#2 Июнь 22, 2011 09:51:36
sanodin От: Зарегистрирован: 2011-06-16 Сообщения: 515 Репутация: 31 Профиль Отправить e-mail
Выключение компьютера по заданному времени
Надо создать группу shutdown , инструкцией пользовался взятой вроде здесь на форуме:
цель — выключение компьютера, которое по умолчанию не удастся сделать без административных полномочий, нам придется сделать еще несколько телодвижений.
* Создадим скрипт /usr/bin/shutdown, написав в него:
#!/bin/sh
sudo /sbin/shutdown $*
Как видно из текста скрипта — там используется обычный /sbin/shutdown, которому передаются все параметры командной строки, передаваемые нашему /usr/bin/shutdown. А также /sbin/shutdown выполняется с командной sudo, которая позволяет выполнять другие команды от имени администратора системы.
* Создадим группу shutdown
sudo groupadd shutdown
и добавим себя в нее, воспользуясь groupadd/usermod или отредактировав файл /etc/group. Я пользовался последним способом, для этого нужно найти в файле /etc/group строку типа
shutdown:x:1002:
Чтобы добавить себя в эту группу, измените эту запись на вот такую:
shutdown:x:1002:user1
где user1 — это логин вашего пользователя. Если необходимо добавить еще несколько пользователей в эту группу, перечислите их через запятые в той же строке (без пробелов). Цифра 1001 (ИД группы) может у вас быть другой.
В конечном виде у меня эта строка получилась такой:
shutdown:x:1002:skymanphp
* Присвоим этот скрипт группе shutdown:
chgrp shutdown /usr/bin/shutdown
* Установим право на запуск только группе shutdown:
chmod g+x /usr/bin/shutdown
* Чтобы sudo не попросило у нас пароль, добавим в файл /etc/sudoers строчку:
%shutdown ALL= NOPASSWD: /sbin/shutdown
Она значит то, что всем пользователям, входящим в группу shutdown разрешен запуск скрипта /sbin/shutdown с административными полномочиями без ввода пароля.
#3 Июль 15, 2017 11:48:14
Kyrym Зарегистрирован: 2016-12-28 Сообщения: 225 Репутация: 3 Профиль Отправить e-mail
Выключение компьютера по заданному времени
Не знаю Tkinter, но получается, что, если делать без таймера, то выключать комп должен такой код из двух строк:
from os import system system("/usr/bin/shutdown -h now")
.
Это для линукса?
Зато прекрасно работает код запуска батника:
файл питона:
import os os.startfile(r'C:\A\Выключение_ПК.txt')
файл bat:
shutdown.exe -s -t 00
Отредактировано Kyrym (Июль 15, 2017 11:51:29)
Как написать выключение компа?
Мне нужно чтобы после последней команды print через 2 минуты компьютер выключился, а как бы это получше написать пока не понял. Потому что я так понимаю если я вставлю этот код в свою программу, то выйдет что он будет с момента запуска отсчитывать время.
Знаю, вопрос дурацкий, но я уже в тупике=/
- Вопрос задан 26 апр.
- 741 просмотр
1 комментарий
Простой 1 комментарий
Как выключить пк с помощью python?
Вы можете выключить компьютер с помощью Python, используя стандартную библиотеку `os`. Однако обратите внимание, что для выполнения этой операции вам может потребоваться права администратора (root или аналогичные в зависимости от вашей операционной системы).
Вот пример кода для выключения компьютера с использованием Python в PyCharm:
import os
# Проверяем операционную систему и выполняем соответствующую команду выключения
if os.name == 'posix': # Для Unix/Linux
os.system('shutdown -h now')
elif os.name == 'nt': # Для Windows
os.system('shutdown /s /t 0')
else:
print("Данная операционная система не поддерживается")
Этот код определяет операционную систему и выполняет соответствующую команду для выключения. Важно помнить, что для выполнения этой операции могут потребоваться права администратора, и код должен быть запущен с соответствующими привилегиями.
Пожалуйста, будьте осторожны при использовании этого кода, так как неправильное выключение компьютера может вызвать потерю данных.
import os
os.system("shutdown /s /t 0")
