linux系统函数学习_(5)access函数、chmod函数、chown函数、truncate函数、rename函数及链接相关函数
access()函数
作用: 测试指定文件是否拥有某种权限
原型: int access(const char *pathname, int mode);
参数:
pathname->文件名
mode->权限类别:R_OK是否有读权限、W_OK是否有写权限、X_OK是否有执行权限、F_OK测试一个文件是否存在
返回值:
0->所有欲查核的权限都通过了检查 -1->有权限被禁止
// access.c
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc, char* argv[])
{
if(argc < 2)
{
printf("a.out filename\n");
exit(1);
}
int ret = access(argv[1], W_OK);
if(ret == -1)
{
perror("access");
exit(1);
}
printf("you can write this file.\n");
return 0;
}
chmod()函数
作用: 改变文件的权限
原型: int chmod(const char *filename, int pmode);
参数:filename->文件名 pmode->权限:必须是一个8进制数
返回值:0->改变成功 -1->失败
// chmod.c
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
int main(int argc, char* argv[])
{
if(argc < 2)
{
printf("a.out filename\n");
exit(1);
}
int ret = chmod(argv[1], 0755);
if(ret == -1)
{
perror("chmod");
exit(1)