You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Python逐行运行文本文件中存储的多条python指令

Python逐行执行命令文件解决方案

你可以直接用Python内置的subprocess模块实现该需求,无需安装第三方依赖,具体实现步骤和代码如下:

使用步骤

  • 将你所有需要执行的命令逐行存入文本文件,比如命名为commands.txt,和执行脚本放在同一目录下
  • 将下方代码保存为run_commands.py
  • 终端执行python run_commands.py即可自动按顺序执行所有命令

完整可运行代码

import subprocess

# 此处修改为你的命令文件实际路径
COMMAND_FILE_PATH = "commands.txt"

if __name__ == "__main__":
    # 读取所有命令行
    with open(COMMAND_FILE_PATH, "r", encoding="utf-8") as f:
        all_commands = f.readlines()

    for order, cmd_line in enumerate(all_commands, start=1):
        # 去除首尾空白,跳过空行和#开头的注释行
        cmd = cmd_line.strip()
        if not cmd or cmd.startswith("#"):
            continue

        print(f"===== 执行第 {order} 条命令:{cmd} =====")
        try:
            # shell=True适配整行完整命令的执行场景,仅在你完全信任命令内容时使用
            subprocess.run(
                cmd,
                shell=True,
                check=True,
                text=True
            )
            print(f"第 {order} 条命令执行成功\n")
        except subprocess.CalledProcessError as e:
            print(f"第 {order} 条命令执行失败,错误码:{e.returncode},错误信息:{e.stderr}\n")
            # 若需要某条命令失败后终止后续所有命令执行,取消注释下方break即可
            # break

可选调整说明

  • 如果你需要将命令的输出内容保存到变量中后续处理,可以给subprocess.run添加参数capture_output=True,执行完成后通过result.stdout和result.stderr分别获取标准输出和错误输出
  • 如果你的命令文件是GBK编码,将open函数的encoding参数修改为gbk即可

内容的提问来源于stack exchange,提问作者X_strong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 21:18:03