[c++] 파일 및 디렉토리 권한 변경하기

이 문서에서는 C++를 사용하여 파일 및 디렉토리의 권한을 변경하는 방법에 대해 설명합니다.

파일 권한 변경

C++로 파일의 권한을 변경하려면 <sys/stat.h> 헤더 파일과 chmod 함수를 사용합니다. 다음은 파일의 권한을 변경하는 간단한 예제입니다.

#include <sys/stat.h>

int main() {
    const char* fileName = "example.txt";
    // 새로운 파일 권한 설정
    mode_t newPermissions = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH;

    if (chmod(fileName, newPermissions) != 0) {
        // 권한 변경에 실패한 경우 오류 처리
        perror("chmod");
        return 1;
    }

    return 0;
}

위 예제에서 S_IRUSR, S_IWUSR, S_IRGRP, S_IWGRP, S_IROTH는 각각 사용자, 그룹 및 기타 사용자에게 읽기 또는 쓰기 권한을 부여하는 상수입니다. chmod 함수를 사용하여 파일의 권한을 변경할 수 있습니다.

디렉토리 권한 변경

디렉토리의 권한을 변경하는 방법은 파일의 경우와 유사합니다. 다음은 디렉토리의 권한을 변경하는 예제입니다.

#include <sys/stat.h>

int main() {
    const char* dirName = "example_dir";
    // 새로운 디렉토리 권한 설정
    mode_t newPermissions = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH;

    if (chmod(dirName, newPermissions) != 0) {
        // 권한 변경에 실패한 경우 오류 처리
        perror("chmod");
        return 1;
    }

    return 0;
}

디렉토리의 권한을 변경할 때도 chmod 함수를 사용하여 새로운 권한을 설정할 수 있습니다.

파일 및 디렉토리의 권한을 변경하는 방법에 대해 간단히 알아보았습니다. 이제 이러한 기능을 사용하여 파일 및 디렉토리의 권한을 프로그래밍적으로 제어할 수 있습니다.

관련 문서: chmod(2) - Linux manual page