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

相关文章

  • 排序算法模板实现示例分享

    排序算法模板实现示例分享

    这篇文章主要介绍了排序算法模板实现示例,需要的朋友可以参考下
    2014-03-03
  • C++如何实现二叉树链表

    C++如何实现二叉树链表

    这篇文章主要介绍了C++如何实现二叉树链表,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • C语言线性表顺序表示及实现

    C语言线性表顺序表示及实现

    这篇文章主要介绍了C语言线性表顺序表示及实现,线性表是最常用且最简单的一种数据结构。简而言之,一个线性表是n个数据元素的有限序列
    2022-07-07
  • 输入一个字符串,取出其中的整数(实现代码)

    输入一个字符串,取出其中的整数(实现代码)

    输入一个字符串,内含所有数字和非数字字符。将其中连续的数字作为一个整数,依次存放到一个数组中,统计共有多少个整数,并输出这些数
    2013-09-09
  • C语言实现顺序表的顺序查找和折半查找

    C语言实现顺序表的顺序查找和折半查找

    这篇文章主要为大家详细介绍了C语言实现顺序表的顺序查找和折半查找,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • C语言中左移和右移运算符详细介绍

    C语言中左移和右移运算符详细介绍

    这篇文章主要介绍了C语言中左移和右移运算符详细介绍的相关资料,需要的朋友可以参考下
    2017-05-05
  • 从头学习C语言之二维数组

    从头学习C语言之二维数组

    这篇文章主要为大家详细介绍了C语言之二维数组,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Qt 智能指针的具体使用

    Qt 智能指针的具体使用

    本文主要介绍了Qt 智能指针的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • C++自定义函数判断某年某月某日是这一年中第几天

    C++自定义函数判断某年某月某日是这一年中第几天

    这篇文章主要介绍了C++自定义函数判断某年某月某日是这一年中第几天的方法,涉及C++日期与时间操作相关技巧,需要的朋友可以参考下
    2016-06-06
  • C语言中字符串常用操作总结

    C语言中字符串常用操作总结

    C语言是一种非常流行的编程语言,它支持各种数据类型,包括整数、浮点数、字符和字符串等,本文将介绍 C语言中字符串的相关知识,包括字符串的定义、初始化、赋值等,需要的可以参考一下
    2023-05-05

最新评论