Bashでforkとexecを実装するにはどうすればよいですか?
スクリプトを次のように仮定します
echo "Script starts"
function_to_fork(){
sleep 5
echo "Hello"
}
echo "Script ends"
基本的に、Cでfork呼び出しとexec呼び出しを使用するように、その関数を新しいプロセスとして呼び出すようにします。
スクリプトから、親スクリプトが終了し、5秒後に「Hello」が出力されることが予想されます。
シェルの場合と同じようにアンパサンドを使用します。
#!/usr/bin/bash
function_to_fork() {
...
}
function_to_fork &
# ... execution continues in parent process ...
どうですか:
(sleep 5; echo "Hello World") &