python - 在 bash 中运行并行命令

标签 python linux bash

我有一个包含多个批处理文件的目录“batches”:

one.txt
two.txt
...
seventy.txt

这些文件中的每一个都需要由 python 脚本处理为:

python processor.py --inputFile=batches/one.txt

我目前的实现是这样的:

for f in batches/$f
do
python processor.py --inputFile=batches/$f
done

我有数百个批处理,因此并行运行所有批处理

python processor.py --inputFile=batches/$f &

不可行。

但是,我认为一次运行 ~10 应该不是问题。

我知道语法

{
python processor.py --inputFile=batches/batchOne.txt
python processor.py --inputFile=batches/batchTwo.txt
} &
{
python processor.py --inputFile=batches/batchThree.txt
python processor.py --inputFile=batches/batchFour.txt
}

应该给我一个类似于我想要的结果。但是,有没有更好的解决方案?基本上,给定一个命令模板,在我的例子中

python processor.py --inputFile=batches/$1

还有一个批处理列表,我想控制同时执行的批处理数。

我正在使用 Ubuntu Linux。

最佳答案

尝试这样做以运行 10//执行:

parallel -j 10 command_line    

安装

sudo apt-get install parallel

关于python - 在 bash 中运行并行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48756915/

相关文章:

python - 在两个二进制文件中查找匹配序列

VS 2015 中的 Python IntelliSense/代码完成

python - 从图像 RGB 值列表中删除 [255,255,255] 条目

python read_csv问题

reactjs - 通过react-env插件为dockerize React应用程序读取docker环境变量?

c++ - 如何将整数参数传递给 shell 脚本,然后将其传递给程序?

mysql - 加载共享库 : libnuma. so.1 时出错:无法打开共享对象文件:没有这样的文件或目录

php - 通过终端在 linux 上安装旧版本 oh phpunit

c++ - 为 C/C++ 标准库、boost 和第三方库设置单独的 ctags 数据库

linux - 如何查找子目录中匹配模式并替换模式的所有文件