Sam*_*ami 31 python linux shell
如何运行多个python脚本?目前我像这样运行一个python script1.py
.
我试过了python script1.py script2.py
,但这不起作用:只运行第一个脚本.另外,我尝试过使用这样的单个文件;
import script1
import script2
python script1.py
python script2.py
Run Code Online (Sandbox Code Playgroud)
然而,这也不起作用.
Chr*_*son 50
使用Bash:
python script1.py &
python script2.py &
Run Code Online (Sandbox Code Playgroud)
这就是整个剧本.它将同时运行两个Python脚本.
Python可以自己做同样的事情,但它需要更多的打字,对于手头的问题是一个糟糕的选择.
我认为你可能会采取错误的方法来解决你的问题,我想听听你的意见.
log*_*ogc 23
同时运行两个Python进程的最简单的解决方案是从bash文件运行它们,并告诉每个进程使用&
shell运算符进入后台.
python script1.py &
python script2.py &
Run Code Online (Sandbox Code Playgroud)
要以更加可控的方式并行运行多个进程,请查看Supervisor项目,或使用多处理模块从Python内部进行编排.
San*_*ndy 14
wait
建议在 bash 脚本末尾添加,因为当其中一个进程完成时脚本就会退出。如果我们需要脚本仅在所有 python 进程完成后退出,请wait
在 bash 脚本末尾添加 。
所以脚本是
#!/bin/bash
python script1.py ;
python script2.py &
python script3.py &
wait
Run Code Online (Sandbox Code Playgroud)
;
第一个脚本的末尾用于运行 script1,一旦完成,然后并行启动 script2 和 script3,并等待所有 3 个脚本完成。
小智 7
我必须这样做并使用子流程。
import subprocess
subprocess.run("python3 script1.py & python3 script2.py", shell=True)
Run Code Online (Sandbox Code Playgroud)