如何在一个接一个的文件夹中运行多个python文件

Kar*_*hik 5 python nose

我有大约20个python文件.

每次我在终端上运行这些文件时,这个表格一个接一个:

python a.py
python b.py
python c.py
python d.py
python e.py
python f.py
python g.py
.
.
.
Run Code Online (Sandbox Code Playgroud)

(我在这里提供了一般文件名)

这个过程需要很多时间.

是否可以通过任何脚本一个接一个地运行这些文件..?

如果可能,那怎么......?

请尽可能提供代码......

我通过几个网站了解到,使用bash脚本我们可以做到这一点..

我不知道如何实现它.

如果您可以建议任何其他方法,即使这将有所帮助.

编辑:

我需要使用nosetests为每个文件生成报告.

我使用nosetests面临的问题是,它创建了一个带有名称的HTML文件results.html.

每次创建报告时,最新的HTML文件都会替换旧的HTML文件.因为名字是一样的.

所以我现在正在做的是,每次运行一个python文件的nosetests时重命名报告.运行nosetests获取第二个文件,生成报告并重命名..它继续...

如果有人能告诉我如何克服这个问题,那会有所帮助..

我正在研究Ubuntu 14.04

小智 8

如果您希望它们并行运行,这个问题How do you run multipleprograms inparallel from a bash script?中有一些有用的信息。

您的命令应如下所示:

python a.py & python b.py & python c.py ....
Run Code Online (Sandbox Code Playgroud)

如果您希望它们依次运行,请将 & 替换为 ;

python a.py;python b.py;python c.py ...
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你!


mve*_*lay 8

要动态运行给定文件夹YOUR_FOLDER中的所有python脚本,您可以运行bash脚本,如:

#!/bin/bash

for py_file in $(find $YOUR_FOLDER -name *.py)
do
    python $py_file
done
Run Code Online (Sandbox Code Playgroud)