linux下access函数的用法介绍
更新时间:2013年08月15日 09:14:01 作者:
access检查用户对一个文件的权限情况,根据mode的值检查调用进程对文件pathname是否具有读、写、或执行的权限
Linux内核总是根据进程的有效用户ID和有效组ID来决定一个进程是否有权访问某个文件。因此,在编写调整用户ID的程序时,在读写一个文件之前必须明确检查其用户是否原本就有对此文件的访问权限。为了实现这种确认,需要使用access函数。
一般形式为;
#include<unistd.h>
int access(const char *pathname,int mode);
其中,pathname是希望检验的文件名(包含路径),mode是欲检查的访问权限,如下所示
R_OK 检验调用进程是否有读访问权限
W_OK 检验调用进程是否有写访问权限
X_OK 检验调用进程是否有执行访问权限
F_OK 检验规定的文件是否存在
access检查用户对一个文件的权限情况,根据mode的值检查调用进程对文件pathname是否具有读、写、或执行的权限。若进程实际用户具有mode所指出的权限,access返回0.否则返回-1.
例如:
access("test",06);
access("test",F_OK);
分别用来检查实际用户对test文件是否具有读写权限和test文件是否存在。
相关文章
vscode终端中打不开conda虚拟包管理的解决
本文主要介绍了vscode终端中打不开conda虚拟包管理的解决,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-09-09
详解C语言中结构体的使用
结构体是一些值的集合,这些值称为成员变量,结构体的每个成员可以是不同类型的变量。本文将通过示例为大家详细讲讲C语言中结构体的使用,需要的可以参考一下
2022-07-07
C语言实现enum枚举
在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等。
以每周七天为例,我们可以使用#define命令来给每天指定一个名字
2021-06-06
c++ 排查内存泄漏的妙招
这篇文章主要介绍了c++ 如何用辅助类排查内存泄漏,帮助大家更好的理解和学习使用c++,感兴趣的朋友可以了解下
2021-03-03
千万不要被阶乘吓倒
本篇文章是对阶乘进行了详细的分析介绍,需要的朋友参考下
2013-05-05
C语言实现扫雷小游戏的示例代码
这篇文中主要为大家详细介绍了如何利用C语言实现经典的扫雷小游戏。扫雷小游戏主要是利用字符数组、循环语句和函数实现,感兴趣的小伙伴可以了解一下
2022-10-10
C语言实现程序开机自启动
本文给大家分享的是一则C语言实现开机自启动的代码,主要是通过C来获取程序路径修改注册表项来实现,有需要的小伙伴可以参考下
2016-01-01
最新评论