我有一个文件,script.py
,我想在我的Windows10机器上安排一个任务计划程序,让它每5分钟运行一次script.py
。但是,我有一些参数想要传递到script.py
文件中以运行它:
python script.py --parameter --parameter < database.txt
我不确定如何在Windows任务计划程序中实现这些参数。
发布于 2021-06-17 09:37:58
我想你打开你的操作的编辑操作窗口,在setting下,有一个add arguments(可选),只需填写你的参数。
发布于 2021-06-17 09:45:15
转到任务的属性。
在操作选项卡下,添加/编辑操作。
您将看到包含参数/参数的选项。
话虽如此,windows任务调度器对我来说一直是个不确定的问题。我个人发现,通过代码使用自定义调度器更可靠。
这是我的建议:
步骤1)在代码的工作目录中创建一个包含以下内容的bat文件:
"C:\Users\user2\AppData\Local\Programs\Python\Python39\python.exe" "C:\Users\user1\Desktop\working-directory\runner.py"
让我们将其命名为"start-runner.bat“。另外,请注意这里的"runner.py“是您的自定义调度程序代码,而不是您的实际代码。
在"runner.py“中,您可以使用子进程模块和线程模块来异步调用您的主文件"python参数-- script.py --参数”。
而且,您可以使用子进程模块特性并将标准输出重定向到文件,而不是使用简单的管道来重定向输出。
对于计划,请导入时间并使用"time.sleep(300)“
步骤2)将bat文件设为只读
步骤3)将bat文件对象复制到windows剪贴板
步骤4)在您的运行命令中键入“shell:startup
第5)步)右键单击并将快捷方式粘贴到文件夹中
步骤6)将快捷方式设为只读
发布于 2022-02-24 13:59:36
只需使用python创建一个".bat“文件,并编写代码来触发该脚本。
假设demo.bat使用arg1、arg2和arg3等参数触发helo.py
demo.bat的内容应为
python /path/to/helo.py %1 %2 %3
在主python文件中,使用python调度任务,如下所示
import os
os.system("schtasks /create /sc minute /mo 5 /tn task_name /tr 'path_to_demo.bat arg1 arg2 arg3' /st 12:00")
这将每隔5分钟触发一次 demo.bat ,demo.bat将使用参数触发helo.py。
https://stackoverflow.com/questions/68010714
复制相似问题