主题:[讨论]请教一个linux程序的编写
这道题的题目是:利用无名管道编写程序实现父进程向子进程发送命令,子进程获取命令,解析命令并执行命令。
我知道了大致框架。但是其中的细节部分我不知道怎么编写啊。。请大家帮我完善下啊。。中文注释的就是要完善的地方。谢谢了
#include<unistd.h> /* pipe() */
#include<stdio.h>
#include<sys/types.h> /* pid_t */
#define MAXLINE 4096
int main(void)
{
int n;
int fd[2];
pid_t pid;
char line[MAXLINE];
//创建管道
if(pipe(fd)<0)
printf("pipe error\n");
//创建子进程
if((pid=fork())<0)
printf("fork error\n");
else if(pid>0) /* parent*/
{
//父进程发命令
}else /* child*/
{
//子进程接收命令并处理
}
return 1;
}
我知道了大致框架。但是其中的细节部分我不知道怎么编写啊。。请大家帮我完善下啊。。中文注释的就是要完善的地方。谢谢了
#include<unistd.h> /* pipe() */
#include<stdio.h>
#include<sys/types.h> /* pid_t */
#define MAXLINE 4096
int main(void)
{
int n;
int fd[2];
pid_t pid;
char line[MAXLINE];
//创建管道
if(pipe(fd)<0)
printf("pipe error\n");
//创建子进程
if((pid=fork())<0)
printf("fork error\n");
else if(pid>0) /* parent*/
{
//父进程发命令
}else /* child*/
{
//子进程接收命令并处理
}
return 1;
}