Fork и exec в bash

Как реализовать fork и exec в bash?

Предположим, что script как

echo "Script starts"

function_to_fork(){
sleep 5
echo "Hello"
}

echo "Script ends"

В принципе, я хочу, чтобы эта функция была вызвана как новый процесс, такой как в C, мы используем вызовы fork и exec..

Из script ожидается, что родительский script закончится, а затем через 5 секунд будет напечатан "Hello".

Ответ 1

Используйте амперсанд так же, как и вы из оболочки.

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

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

Ответ 2

Как насчет:

(sleep 5; echo "Hello World") &