如何编写批处理文件自动多实例运行带参数的Python脚本
实现方法
第一步:修改Python脚本,支持命令行传参
把原来需要手动输入参数的逻辑改成直接接收命令行参数,这样就能通过脚本自动传递区间值。修改后的代码如下:
import sys def task(start, stop): # 保留你的实际任务逻辑 print(f"正在处理区间 {start} - {stop}") return if __name__ == '__main__': if len(sys.argv) != 3: print("使用方式: python task.py <起始值> <结束值>") sys.exit(1) try: start = int(sys.argv[1]) stop = int(sys.argv[2]) except ValueError: print("参数必须是整数") sys.exit(1) task(start, stop)
第二步:编写BAT自动批量启动脚本
创建一个名为run_tasks.bat的文件,内容如下:
@echo off setlocal enabledelayedexpansion :: 配置任务参数 set total_end=1000 set task_count=10 set /a each_step=total_end / task_count :: 循环启动每个任务窗口 for /l %%i in (1,1,%task_count%) do ( set /a current_start=(%%i-1)*each_step +1 set /a current_stop=%%i*each_step :: 处理最后一个区间,确保结束值为总上限(避免整除偏差) if %%i equ %task_count% set current_stop=%total_end% :: 启动新CMD窗口运行任务,窗口标题标注任务编号 start "任务 %%i" python task.py !current_start! !current_stop! )
使用说明
- 将修改后的
task.py和run_tasks.bat放在同一文件夹下 - 双击
run_tasks.bat,会自动打开10个CMD窗口,每个窗口对应处理一个拆分后的区间(1-100、101-200……901-1000)
内容的提问来源于stack exchange,提问作者duy dang
相关产品推荐
相关产品推荐

