my_system함수를 이용해서 cp명령을 할려고하는데요.
글쓴이: 베리스타 / 작성시간: 화, 2003/12/16 - 12:04오후
아래 함수를 man system에 나온 함수를 이용해서 만들었습니다.
command 변수에는 /bin/mv -f /home/test/수정/ch/mem /home/test/수정/ch1/mem 가 들어가 있습니다.
근데 cp명령이 실행이 안되네요.>.<
에러는 없고 실행은 안되서 여쭤봅니다.
잘못된 부분좀 알려주세요^^
int my_system (char *command)
{
int pid, status;
if (command == 0)
return 1;
pid = fork();
if (pid == -1)
return -1;
if (pid == 0)
{
char *argv[4];
char *environ[50];
argv[0] = "sh";
argv[1] = "-c";
strcpy(argv[2], command);
md_printf(MD_DEBUG_FILE_COPY, "command = %s\n", command);
argv[3] = 0;
execve("/bin/sh", argv, environ);
exit(127);
}
do
{
if (waitpid(pid, &status, 0) == -1)
{
if (errno != EINTR)
return -1;
}
else
{
md_printf(MD_DEBUG_FILE_COPY, "\thm..status = %d\n", status);
return WIFEXITED(status);
}
}
while(1);
}
그럼 즐거운 하루되세요~Forums:


댓글 달기