gpt4 book ai didi

Python OS X 如何在多个终端窗口中并行启动脚本

转载 作者:太空宇宙 更新时间:2023-11-03 17:25:12 26 4
gpt4 key购买 nike

我正在开发一个数据挖掘项目,我想同时从多个站点获取信息。我目前正在通过在 20 个不同的终端窗口(在 OS X 上)中运行相同的挖掘脚本来实现此目的。

我的信念(可能不正确)是在单独的终端窗口中运行脚本,这就是挖掘并行执行的原因。

问题:

A)如果我对使用多个终端窗口的看法不正确,最好的方法是什么?

B)如果我正确地使用多个终端窗口,是否有一种有效的方法可以让脚本在 20 个不同的终端窗口中执行?

我使用 2 个脚本设置了一个原型(prototype)。

脚本 1 是trigger.py,旨在将参数列表发送到第二个脚本。在下面的触发脚本中,我使用数字,但想法是发送网址。

脚本 2 是execute.py,旨在接收参数并执行,最好在每个参数的新终端窗口中执行。在实践中,如果这种方法是最好的方法,那么我将矿工放入此脚本中并让它接收 url,打开一个新的终端窗口,然后运行。

现在它只是在同一个窗口中执行。这又是我寻求帮助的问题。

 

脚本1触发器.py

#!/usr/bin/python
import os
import sys


class newTerm(object):
def __init__(self, number):
self.number = number

def run(self):
os.system('/Users/InNov8/Desktop/execute.py ' + str(self.number))


starts = [100, 500, 1000, 2000]
for s in starts:
new = newTerm(s)
new.run()

脚本2执行.py

#!/usr/bin/python

import sys

print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)
number = int(sys.argv[1])
print number, number + 400

最佳答案

一个简单的方法是在后台运行脚本,这实际上非常简单。只需在调用末尾附加一个 & (将命令发送到后台),您就可以在同一终端中运行它们:

python trigger.py [params] &

您甚至可以编译一个 bash 脚本,使用一个命令同时启动所有这些脚本。您还可以使用它将返回值聚合到一处以方便使用:

miner.sh

#!/bin/bash
python trigger.py [params1] &
python trigger.py [params2] &
#etc

关于Python OS X 如何在多个终端窗口中并行启动脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32662373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com