加入收藏 | 设为首页 | 会员中心 | 我要投稿 大同站长网 (https://www.0352zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Linux下access函数的实施

发布时间:2021-11-21 15:09:59 所属栏目:教程 来源:互联网
导读:Linux内核总是根据进程的有效用户ID和有效组ID来决定一个进程是否有权访问某个文件。因此,在编写调整用户ID的程序时,在读写一个文件之前必须明确检查其用户是否原本就有对此文件的访问权限。为了实现这种确认,需要使用access函数。 一般形式为; #includeu

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文件是否存在。

(编辑:大同站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!