如何在系统关机时(Windows 7),运行Python脚本

4
我想在系统关机前运行一个Python脚本。我正在使用Windows 7。我已经成功地在系统启动时运行了Python脚本,但是我无法在关机前运行脚本。我参考了如何安排任务在Windows关机时运行和Stack Overflow上的其他类似问题,但是这些方法似乎都无法正常工作。请问有没有人能告诉我怎么实现?

你是在添加 .py 脚本还是 .bat 脚本?这个链接可以帮到你:为 Python 脚本创建 BAT 文件 - Dawid Fieluba
.py脚本...... - python_fan
启动和关闭只适用于 .bat 文件吗?@avix - python_fan
为了确保在关闭系统时执行脚本,创建一个简单的 .bat 文件,其中包含类似 python your_script.py 的内容,这样它将运行您的 .py 脚本,然后对 .bat 文件进行必要的配置。 - Mohammed Janati Idrissi
3个回答

3

启动和关闭只适用于 .bat 文件吗?

是的,在 Windows 中作为启动/关闭脚本,您需要提供 批处理文件

这里是我建议您使用的解决方法。

  1. 创建以下代码的 .bat 脚本(假设您已将 Python 包含在 PATH 中):

    for %%i in (/Shutdown/*.py) do python C:/Shutdown/%%i

  2. 将 .bat 脚本添加到 Windows 关闭计划中。

运行 gpedit.msc

计算机配置 -> Windows 设置 -> 脚本 -> 关闭 -> 属性 -> 添加

  1. 创建目录 C:/Shutdown(如果要使用不同的目录,请更改 .bat 脚本中的路径)。
  2. 将所有 .py 脚本放入 C:/Shutdown。它们现在将在 Windows 关闭时执行。

1
可将可执行文件设置为“脚本”。只需浏览以添加“python.exe”的完全限定路径,并将脚本的完全限定路径作为参数传递即可。 - Eryk Sun

0

这对我没有起作用。我不得不在 .bat 文件中写以下内容

for %%i in (/Shutdown/*.py) do @python.exe C:/Shutdown/%%i

我把.bat文件放在关机文件夹中,并将其添加到了PATH中。但是,如果.bat文件在另一个也包含在PATH中的文件夹中,那么这似乎并不重要。

gpedit.msc中,我必须将链接添加到用户配置 -> Windows设置 -> 脚本字段中的.bat文件中,而不是计算机配置。

我正在运行Windows 10和Python 3.7。


或者更简单地说,python c:/Users/vicente/Documents/startup.py - Vicente Rocha

0

在Windows 11中这个不起作用,但是如果我将批处理文件移动到:

用户配置 -> Windows设置 -> 脚本(登录/注销) -> 注销


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接