#include <stdio.h>
#include <sys/wait.h>
int main(void)
{
char buf[20];
pid_t pid;
int status;
printf("%% ");
while(fgets(buf,20,stdin) != NULL)
{
if(buf[strlen(buf)-1] == '\n')
buf[strlen(buf)-1] = 0;
if((pid = fork()) < 0)
printf("fork error\n");
else if(pid == 0)
{
execlp(buf,buf,(char *)0);
printf("child pid error\n");
exit(127);
}
if((pid =waitpid(pid,&status,0))<0)
printf("waipid error\n");
printf("%% ");
}
exit(0);
}
~
~