#include<stdio.h>
#include<string.h>
#include<unistd.h>
#include<stdlib.h>
#define NUM 16
#define MAX 1024
int main()
{
char *myargv[NUM];
char cmd[MAX];
while(1){
printf("[shell@localhost lianxi]:");
fgets(cmd,sizeof(cmd),stdin);
cmd[strlen(cmd)-1]='\0';
int i=0;
myargv[i++]=strtok(cmd," ");
char *ret=NULL;
while(ret = strtok(NULL," "))
{
myargv[i++]=ret;
}
myargv[i]=NULL;
pid_t id =fork();
if(id==0)
{
execvp(myargv[0],myargv);
}//child
else
{
waitpid(id,NULL,0);
}//parent
}
//int j=0;
//for(;j<i;j++)
//{
// printf("%s\n",myargv[j]);
// }
return 0;
}