Python 多线程并行执行 Shell 命令 - 提高效率的最佳实践
在 Python 中,可以使用 subprocess 模块来执行 Shell 命令,并且可以使用多线程来实现并行执行。\n\n下面是一个示例代码:\n\npython\nimport subprocess\nfrom threading import Thread\n\n# 定义一个函数,用于执行 shell 命令\ndef run_command(command):\n subprocess.call(command, shell=True)\n\n# 创建一个线程类\nclass ShellThread(Thread):\n def __init__(self, command):\n super().__init__()\n self.command = command\n\n def run(self):\n run_command(self.command)\n\n# 创建多个线程,并启动它们\nthreads = []\ncommands = ["echo 'hello'", "echo 'world'", "echo 'python'"]\nfor command in commands:\n thread = ShellThread(command)\n threads.append(thread)\n thread.start()\n\n# 等待所有线程执行完毕\nfor thread in threads:\n thread.join()\n\n\n在上面的代码中,首先定义了一个 run_command 函数,用于执行 Shell 命令。然后创建了一个 ShellThread 类,继承自 Thread 类,用于表示一个执行 Shell 命令的线程。在 ShellThread 类中,重写了 run 方法,该方法会在线程启动时被调用,其中调用了 run_command 函数来执行 Shell 命令。\n\n接下来,创建了多个 ShellThread 实例,并将它们添加到 threads 列表中。然后,依次启动每个线程。最后,使用 join 方法等待所有线程执行完毕。这样就实现了多线程并行执行 Shell 命令的功能。
原文地址: https://www.cveoy.top/t/topic/pF6i 著作权归作者所有。请勿转载和采集!