반응형
chdir(2)
#include <unistd.h>
int chdir(const char * path);
현재 작업 디렉토리를 변경합니다.
파라미터
path
- 변경할 상대 또는 절대 directory path
RETURN
0
- 프로세스의 작업디렉토리가 정상적으로 변경되었습니다.
-1
-오류가 발생하였으며, 기존의 작업디렉토리가 유지됩니다. 상세 오류 내용은 errno에 저장됩니다.
EACCES : path 구성 중의 디렉토리에 search 권한이 없음.
EFAULT : path의 메모리가 bad 주소영역임.
EIO : I/O 중에 오류가 발생함.
ELOOP : symbolic link가 순환 link가 존재함.
ENAMETOOLONG : Full Path명{PATH_MAX}이 너무 길거나 한 디렉토리명{NAME_MAX}이 너무김.
ENOENT : 존재하지 않는 파일임.
ENOTDIR: 디렉토리가 아님.
활용 예제
Sample
#include <unistd.h>
#include <sts/types.h>
......
char dir[1024];
......
// 새로운 작업 디렉토리로 이동하...
if(chdir(dir) == -1) {
fprintf(stderr, "working directory change error: %s\n", strerror(errno));
return -1;
}
......
see also : Directory 정보 조회 및 관리 Library
반응형
'C언어 header > unistd.h' 카테고리의 다른 글
getcwd(3) - 현재 작업 경로를 얻음 (0) | 2019.10.04 |
---|---|
fchdir(2) - 현재 작업디렉토리를 변경함 (0) | 2019.10.04 |
rmdir(2) - directory 삭제하기 (0) | 2019.10.04 |
write(2) - 파일에 데이터 쓰기 (0) | 2019.10.04 |
read(2) - 파일에서 데이터를 읽기 (0) | 2019.10.04 |