#include <stdio.h>
#include <sys/wait.h>
#include<stdio.h>
#include<unistd.h>
#define MAXLINE 1024
int main(void)
{
char buf[MAXLINE];
pid_t pid;
int status;
printf("%%");
while(fgets(buf,MAXLINE,stdin)!=NULL)
{
if(buf[strlen(buf)-1]=='\n')
buf[strlen(buf)-1]=0;
if((pid=fork())<0)
{
printf("fork error");
}else if(pid == 0){
execlp(buf,buf,(char *)0);
printf("counldn`t execute: %s",buf);
exit(127);
}
/* parent */
if((pid=waitpid(pid,&status,0))<0)
printf("waitpid error");
printf("%%");
}
exit(0);
}
从标准输入中读命令并执行
最新推荐文章于 2024-08-07 14:22:19 发布