리눅스 access - 리눅스 시스템 프로그래밍 프로세스가 지정한 파일을 오픈하려 할 때 허가되지 않은 접근 권한을 적용하면 오픈이 실패하게 된다. access는 프로세스가 지정한 파일에 대해 어떤 접근 권한을 가질 수 있는지 검사한다. int access(const char* pathname, int mode); > pathname : 파일에 대한 경로명이다. > mode : 검사하려는 접근 권한으로 - R_OK(읽을 수 있는가?), - W_OK(쓸 수 있는가?), - X_OK(실행되는가?) - F_OK(존재하는가?) > return 값 : access 호출이 성공하면 0을 반환, 실패하면 -1을 반환한다. > 헤더파일 : <unistd.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int main() { char *filename = "access.txt"; if( access(filename, R_OK) == -1) { perror("User can't read file"); return 1; } if( access(filename, W_OK) == -1) { perror("User can't write file"); return 1; } if( access(filename, X_OK) == -1) { perror("User can't execute file"); return 1; } if( access(filename, F_OK) == -1) { perror("User can't exist file"); return 1; } }
'Linux' 카테고리의 다른 글
BSD Socket - server & multi-client file transfer (0) | 2016.11.22 |
---|---|
Linux Ubuntu 16.04 LTS 설치하기 (5) | 2016.06.23 |
리눅스 umask - 리눅스 시스템 프로그래밍 (0) | 2016.02.29 |
리눅스 unlink, remove - 리눅스 시스템 프로그래밍 (0) | 2016.02.29 |
리눅스 lseek - 리눅스 시스템 프로그래밍 (0) | 2016.02.29 |