67 votes

fork et exec en bash

Comment implémenter fork et exec dans bash ?

Supposons que script comme

echo "Script starts"

function_to_fork(){
sleep 5
echo "Hello"
}

echo "Script ends"

Fondamentalement, je veux que cette fonction soit appelée comme un nouveau processus comme en C nous utilisons les appels fork et exec

A partir du script, on s'attend à ce que le script parent se termine et qu'après 5 secondes, "Hello" soit imprimé.

113voto

mob Points 61524

Utilisez l'esperluette comme vous le feriez depuis le shell.

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

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

32voto

jskaggz Points 1751

Pourquoi pas :

(sleep 5; echo "Hello World") &

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X