간단하미 미니쉘 만들어 보고 있는데 뭐가 문제인지 잘 모르겟네요

일단 pwd나 ls 같이 /bin 디랙토리에 있는걸 fgets로 입력 받아서 실행 시키고 싶은데...음.. (우분투 gcc 입니다.)



#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <string.h>
#include <sys/wait.h>
#include <sys/types.h>

int main(void)
{

pid_t pid;
char *argv[3];
char *argc[255];
char b[50];


//argv[0] = a;
/*argv[1] = "NULL";
argv[2] = "NULL";*/
puts(b);

while(1)
{
 fgets(b,sizeof(b),stdin);

 argv[0] = b;
 argv[1] = "NULL";

if(strncmp(b, "end\n", 5) == 0)
break;

switch (pid = fork())
{

case -1:
perror("fork erro");
exit(1);
break;


case 0:
if(execv("/bin/", argv) == -1)
{
perror("d");
exit(1);
}

exit(0);
break;

default :
break;

}
}
return 0;
}


일단 이리 짜두기는 했는데 역시 오류가 뜨네요 ㅠㅜ

(한2년 안하니 초기화 해서 다시 공부중 입니다...)