Linux:文件属性操作函数

Linux:文件属性操作函数

在这里插入图片描述

access

/*
#include <unistd.h>
int access(const char *pathname, int mode);
作用:判断某个文件是否有某个权限,或者判断文件是否存在
参数:
- pathname:判断的文件路径
- mode:
    R_OK:判断是否有读权限
    w_OK:判断是否有写权限
    x_OK:判断是否有执行权限
    F_OK:斯文件是否存在
返回值:
    成功:0
    失败:-1
*/

#include <stdio.h>
#include <unistd.h>

int main(){
    
    
    int ret  = access("a.txt", F_OK);

    if(ret == -1){
    
    
        perror("access");
        return -1;
    }

    printf("file is exixted \n");
    return 0;
}

chmod

/*
#include <sys/stat.h>
int chmod(const char *pathname, mode_t mode);
修改文件的权限
参数:
    - pathname:需要修改的文件的路径
    - mode:需要修改的权限值,八进制的数
返回值:
    成功返回0,失败返回-1
*/
#include <sys/stat.h>
#include <stdio.h>

int main(){
    
    


    int ret = chmod("a.txt", 0666);

    if(ret == -1){
    
    
        perror("chmod");
        return -1;
    }

    


    return 0;
}

truncate

/*
#include <unistd.h>#include <sys/types.h>
int truncate(const char *path, off_t length);
    作用:缩减或者扩展文件的尺寸至指定的大小
    参数:
        -path:需要修改的文件的路径
        -length:需要最终文件变成的大小
*/

#include <unistd.h>
#include <stdio.h>

int main(){
    
    

    int ret = truncate("a.txt", 100);

    if(ret == -1){
    
    
        perror("truncate");
        return -1;
    }

    

    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_44861043/article/details/121370822
今日推荐