Bash 中的 fork 和 exec

如何在 bash 中实现 fork 和 exec?

让我们假设脚本为

echo "Script starts"


function_to_fork(){
sleep 5
echo "Hello"
}


echo "Script ends"

基本上,我希望这个函数被调用为新的进程,就像在 C 中我们使用 fork 和 exec 调用一样。

从脚本预计父脚本将结束,然后在5秒钟后,“ Hello”被打印出来。

166502 次浏览

这个怎么样:

(sleep 5; echo "Hello World") &

使用 & 符号,就像你在 shell 中使用的那样。

#!/usr/bin/bash
function_to_fork() {
...
}


function_to_fork &
# ... execution continues in parent process ...