Из приведенных выше заметок похоже, что команда sub наследует stdout / stderr в вызывающем процессе и не оставляет никаких фоновых процессов.
Если эти предположения верны, вы можете подождать, покаот fortran_bin
больше нет выходных данных, и это дочерние элементы, по конвейеру выводимые в cat
(или аналогичные). Программа cat
не прекратит работу, пока все дочерние элементы 'fortran_bin' (которые не перенаправили stderr) не завершат
mpiexec ./fortran_bin 2>&1 3>&1 | cat
Возможно использовать tee (или другие подобные программы) вместо cat