网站开发技术

记点笔记、 学点技术 欢迎交流建站技术。本站关注lamp技术

您尚未登录。

#1 2015-01-27 09:42:15

admin
管理员

使用 chmod 修改文件的权限

linux修改文件的权限可以使用系统函数  chmod 

函数的原型

#include <sys/stat.h>
int chmod(const char *path, mode_t mode);

测试代码

#include <stdio.h>
#include <sys/stat.h>

int main() {
    const char * p_fname = "/root/a";
    // 返回的结果是 -1 表示失败, 0 表示成功
    if(chmod(p_fname, 0777) == -1) {
        perror("权限修改失败\n");
    } else {
        printf("文件 %s 权限修改成功\n", p_fname);
    }
    return 0;
}

这里要注意三点:

第一:mode_t 是一个int数, 最好使用 八进制, 和系统保持一致。

第二: chmode 执行成功的时候 返回的是 0,执行错误的时候 返回的 是 -1.

第三: 第二个参数是一个int数, 如果不是权限问题,文件不存在, 通常是都会执行成功, 就是 mode_t 写成 777 十进制的也会返回 0. 所以最好用八进制数


ipbbs.net

离线

页脚

Powered by FluxBB