linux用命令行运行一个C语言程序,这个进程如何接收控制台命令,去执行不同的动作

就像tftp服务一样,先输入tftp,然后就可以在tftp中敲不同的命令。最后可以通过控制台命令结束这个进程,例如下面的例子:
:~/$ myService start
-> app1 start
-> app2 start
-> app1 status
app1 is running
-> app1 stop
-> app1 status
app1 not running
-> exit
:~/$
最好用c语言实现,

进程里读stdin就行了啊。
就好像启动一个shell:
while read line
do
echo $line
done