Каждый выполняемый скрипт оболочки по сути является подпроцессом (дочерним процессом) родительской оболочки.
Сценарий оболочки может сам запускать подпроцессы. Эти субоболочки позволяют сценарию выполнять параллельную обработку, фактически выполняя несколько подзадач одновременно.
скажем, у вас есть сценарий test.sh
. После запуска, если вы запустите команду
ps -ef|grep -i test.sh
вы увидите, что он работает с другим PID
Как правило, внешняя команда в сценарии разветвляется на подпроцесс / подоболочку