我有python3
训练师命令输入
我想为10(增量即+1
)日期调用此命令,从而产生10个输出文件。所有10个命令的另外2个输入文件是相同的。我想知道如何在10个线程(Linux)中并行调用这些命令。
答案 0 :(得分:2)
选项1:在parallel
工具中使用。
GNU parallel是一个shell工具,用于使用一台或多台计算机并行执行作业。作业可以是单个命令,也可以是必须为输入中的每一行运行的小脚本。典型的输入是文件列表,主机列表,用户列表,URL列表或表列表。作业也可以是从管道读取的命令。然后,GNU parallel可以拆分输入并将其并行输入命令。
选项2:手动管理作业
要在后台运行作业,只需在命令末尾添加&
。
有用的命令:
jobs -r # list of running
kill -SIGSTOP %N # suspend job N
kill -SIGCONT %N # resume job N
示例:强>
$ sleep 30 & # <- run in background
$ sleep 60 & # <- run in background
$ sleep 60 & # <- run in background
# list of running jobs
$ jobs -r
[1] Running sleep 30 &
[2]- Running sleep 60 &
[3]+ Running sleep 40 &
# kill job [3]
$ kill %3
# list of jobs
$ jobs
[1] Running sleep 30 &
[2]- Running sleep 60 &
[3]+ Terminated sleep 40