이 름
chdir, fchdir − 작 업 디 렉 토 리 를 바 꾼 다 .
사 용 법
#include <unistd.h>
int
chdir(const char *path);
int fchdir(int fd);
설 명
chdir는 현 재 디 렉 토 리 를 path가 지 정 한 곳 으 로 바 꾼 다 .
fchdir는 chdir와 동 일 하 며 , 단 지 열 려 진 파 일 기 술 자 가 인 자 로 주 어 진 다 .
반 환 값
성 공 시 , 0이 리 턴 된 다 . 에 러 시 , −1이 리 턴 되 며 , errno는 적 당 한 값 으 로 설 정 된 다 .
에 러
파 일 시 스 템 에 의 존 적 이 며 , 다 른 에 러 가 리 턴 될 수 있 다 . chdir에 서 발 생 하 는 일 반 적 인 에 러 는 다 음 과 같 다 :
EFAULT |
path는 접 근 할 수 없 는 메 모 리 영 역 을 가 리 키 고 있 다 . |
ENAMETOOLONG
path가 너 무 길 다 .
ENOENT |
파 일 이 존 재 하 지 않 는 다 . |
|||
ENOMEM |
커 널 메 모 리 가 충 분 하 지 않 다 . |
ENOTDIR
path가 디 렉 토 리 가 아 니 다 .
EACCES |
허 가 가 거 부 되 었 다 . | ||
ELOOP |
path를 찾 아 갈 때 , 너 무 많 은 심 볼 릭 링 크 가 존 재 한 다 . | ||
EIO |
I/O 에 러 가 발 생 했 다 . |
fchdir에 서 발 생 하 는 일 반 적 인 에 러 는 다 음 과 같 다 :
EBADF |
fd가 유 효 한 파 일 기 술 자 가 아 니 다 . |
|||
EACCES |
fd로 지 정 된 디 렉 토 리 를 여 는 데 허 가 가 거 부 되 었 다 . |
호 환
chdir은 SVr4, SVID, POSIX, X/OPEN, 4.4BSD과 호 환 이 다 . SVr4문 서 는 EINTR, ENOLINK 그 리 고 EMULTIHOP 에 러 상 태 를 추 가 적 으 로 기 술 하 지 만 ENOMEM은 언 급 하 지 않 았 다 . POSIX.1은 ENOMEM 또 는 ELOOP 에 러 상 태 를 포 함 하 고 있 지 않 다 . X/OPEN은 EFAULT, ENOMEM 또 는 EIO 에 러 상 태 를 포 함 하 고 있 지 않 다 .
fchdir 시 스 템 콜 은 SVr4, 4.4BSD 그 리 고 X/OPEN과 호 환 이 다 . SVr4 문 서 는 EIO, EINTR 그 리 고 ENOLINK 에 러 상 태 를 추 가 적 으 로 기 술 한 다 . X/OPEN 문 서 는 EINTR 그 리 고 EIO 에 러 상 태 를 추 가 적 으 로 기 술 한 다 .
관 련 항 목
역 자
정 강 훈 <skyeyes [AT] soback.net>, 2000년 5월 1일