Python3调用cmd的schtasks和shutdown命令实现WIN10定时自动关机

最近电脑的地点与住宿地点不一样,有时候晚上有事无法去关闭而电脑没办法关,也不能每天都麻烦同学帮忙,并且“程序员应该用程序来解决我们的问题”——引用别人的话,如果打错了请见谅——所以就记录一下自己用来定时关机的程序。

环境:

  1. WIN10

  2. Python3.6.5

使用到的模块:

  1. OS

首先要测试出cmd中电脑自动关机的命令:

schtasks /create /tn "关机" /tr "shutdown /s" /sc once /st 14:31

使用schtasks命令,创建一个任务,名字叫“关机”,命令内容是“shutdown /s”即自动关机,执行一次(once),在14:31时执行,首先尝试这个命令是否可行:

可行,现在是:

等待一会儿查看现象。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

可以看到,到31分时,系统提示我们一分钟后关机,这时我们不想关机了怎么办呢,只需要一个简单的命令:

即可取消,但是如果还没有到时间,我们回来了,不想让它自己关机了,这时候执行shutdown -a会提示这个:

这时我们需要去计划任务里取消这个任务:(再重新创建一个任务为关机)

取消定时关机的任务:

使用小娜搜索“计划任务”,然后点进去:

 

在任务计划程序库中,可以看到我们这个任务,单机,在右侧可以删除掉这个任务

删除之后就可以正常工作了。

在程序中怎么用:

 只需要调用Python3的os模块,使用一个popen的方法,即可:

# -*- coding:utf-8 -*-
import os
rec = os.popen('''schtasks /create /tn "关机" /tr "shutdown /s" /sc once /st 14:16''')
print(rec.read())

我们到时候需要将这个时间修改为我们需要的时间,而如果我们重复使用,会出现这样的结果:

这个时候,如果我们重复执行程序,也需要输入这个,所以我们把这个需要输入的拿出来,打印,然后我们在程序里如果重复,会出现卡在这里的情况:

此时,我们只需要输入一个y,回车就可以了,虽然现在没有任何提示,但是,输入y,回车,就会出现,如果不想,则n,回车即可:

然后我们就可以安心的去办自己的事情了,走的时候,在程序文件夹下,按住shift并鼠标右键:

然后在此处打开命令窗口,然后使用python命令行运行这个简单的脚本程序即可,若我们不回来,电脑会自动关机,若回来,我们就可以取消电脑关机,两全其美,真好~~~

©️2020 CSDN 皮肤主题: 点我我会动 设计师:上身试试 返回首页