I would like to write a small program that will run other programs. I’m not just trying to get their output as stdio for the current process, but rather want to simply use the program to use as a dispatch program.
I don’t want to compile them together, but rather keep all the different programs separate.
I’m assuming that using a shell script would be the normal way of doing this, but I specifically want to know how it would be done in C on Linux.
You could do something like fork and use execve.
I’m not entirely understanding the problem though. Do you need the dispatcher to be able to read the output of the dispatched program?