사용자 입력이있는 하위 프로세스에서 exec 명령을 실행하려고하는데 인쇄 중이거나 작동하지 않습니다.execl()이 작동하지 않습니다/인쇄 중입니다.
char input[100];
int pid;
printf("$ ");
fgets(input, 100, stdin);
while (strncmp(input, "exit", 4)){
pid = fork();
if(pid == 0){
char str[105];
strcpy(str, "/bin/");
strcat(str, input);
printf("%s", str);
execl(str, input, NULL);
exit(0);
}
else if(pid < 0){ /* error while doing fork */
exit(1);
}
else{
wait(0);
}
printf("$ ");
fgets(input, 10, stdin);
}
exit(0);
어떤 종류의 오류 또는 디버그 정보가 있습니까? – EWit
저는 C로 새로 왔습니다. 그것은 잘 컴파일하지만 내가 할 때 아무것도 인쇄하지 않습니다 – Mark