Как изначально написано, PythonScript2.py
не будет работать до тех пор, пока не вернется PythonScript1.py
, а цикл for
не будет повторяться, пока не вернется PythonScript2.py
.
Обратите внимание, что я сказал "возвращается",не "заканчивает";если PythonScript1.py
и / или PythonScript2.py
fork
s или иным образом уходит в фон самостоятельно, то он вернется до завершения и продолжит обработку, пока вызывающий скрипт bash перейдет к следующему шагу.
Вы можете сделать так, чтобы вызывающий скрипт поместил их в фоновый режим с помощью PythonScript1.py &
и PythonScript2.py &
, но это может или не может быть тем, что вы хотите, так как PythonScript1.py
и PythonScript2.py
таким образом (вероятно) будутвыполняется одновременно.
Если вы хотите, чтобы несколько файлов обрабатывались одновременно, но хотите, чтобы PythonScript1.py
и PythonScript2.py
выполнялись в строгом порядке, следуйте комментарию Уильяма Перселла:
for filename in /path/to/*.txt; do
{ PythonScript1.py "$filename"; PythonScript2.py "$filename"; } &
done