我有一个Python脚本让我们调用它foo.py
,我需要先执行它。在此脚本执行完毕后,我必须运行大约10个Java JAR文件(让我们称之为waldo.jar
)。我想节省时间并让它们同时运行。如何在shell脚本中复制此函数?
到目前为止,我有这个:
#!/bin/bash
cd /root
python3 foo.py 1> output.txt
java -jar waldo.jar fooArg barArg & # Jar 1
java -jar waldo.jar fooArg2 barArg2 & # Jar 2
java -jar waldo.jar fooArg3 barArg3 & # Jar 3
... and so on
echo "All Finished!"
我需要在后台同时运行这些jar文件。
答案 0 :(得分:0)
在结束之前,您可以添加以下内容以等待所有子进程完成。
echo "[$(date '+%Y-%m-%d %H:%M:%S')] Waiting for subprocesses..";
for job in `jobs -p`
do
echo $job
wait $job
done