函数功能

检查调用进程是否可以对指定的 文件/目录 执行某种操作。

函数头文件

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

函数原型

int access(const char * pathname, int mode)

参数

pathname:需要检测的文件路劲名

mode:需要测试的操作模式。

mode说明:

R_OK      测试读许可权
W_OK      测试写许可权
X_OK      测试执行许可权
F_OK      测试文件是否存在

函数返回值说明

成功执行时,返回0。失败返回-1,errno被设为以下的某个值
EINVAL: 模式值无效
EACCES: 文件或路径名中包含的目录不可访问
ELOOP : 解释路径名过程中存在太多的符号连接
ENAMETOOLONG:路径名太长
ENOENT:路径名中的目录不存在或是无效的符号连接
ENOTDIR: 路径名中当作目录的组件并非目录
EROFS: 文件系统只读
EFAULT: 路径名指向可访问的空间外
EIO:输入输出错误
ENOMEM: 不能获取足够的内核内存
ETXTBSY:对程序写入出错

函数实例

#include <stdio.h>
#include <unistd.h>int main(void)
{if (access("test.txt", R_OK) == 0){printf("READ OK\n");}if (access("test.txt", W_OK) == 0){printf("WRITE OK\n");}if (access("test.txt", X_OK) == 0){printf("EXEC OK\n");}if (access("test.txt", F_OK) == 0){printf("File exist\n");}
}

linux c access 函数 文件 目录 路径 是否存在相关推荐

  1. linux的库文件路径,Linux下的库文件搜索路径

    对于以压缩包发布的软件,在它的目录下通常都有一个配置脚本configure,它的作用确定编译参数(比如头文件位置.连接库位置等),然后生成Makefile以编译程序.可以进入该软件的目录,执行&quo ...

  2. linux 进目录输入密码,scp在Linux主机之间复制文件/目录不用输入密码

    scp在Linux主机之间复制文件/目录不用输入密码 把你的本地主机用户的ssh公匙文件复制到远程主机用户的~/.ssh/authorized_keys文件中,假设本地主机linux(10.1.1.1 ...

  3. linux vim配置头文件搜索路径

    linux vim配置头文件搜索路径 根目录下 修改 etc/profile 文件结尾处加 set path=.,/usr/include,,/usr/include/c++/** //**搜索子目录 ...

  4. linux下access函数的应用

    Linux内核总是根据进程的有效用户ID和有效组ID来决定一个进程是否有权访问某个文件.因此,在编写调整用户ID的程序时,在读写一个文件之前必须明确检查其用户是否原本就有对此文件的访问权限.为了实现这 ...

  5. [转]Linux C语言头文件搜索路径

    转自:http://hi.baidu.com/ilonng/blog/item/a0232435fbcfb90490ef390d.html/cmtid/68d4ab7bbb8026fb0ad187be ...

  6. linux命令 移动/复制文件/目录到指定目录下

    1.同一个服务器下复制文件或文件夹 1.1 复制文件 复制文件:把1.txt 复制到根目录下的sbin目录 cp +文件名(可带路径)+目标路径(带路径)如:cp 1.txt ~/sbin/ 1,2 ...

  7. 『Linux』默认头文件存储路径/usr/include

    文章目录 /usr/include 引用 完 /usr/include linux系统编程往往需要引用c头文件,linux下,头文件一般存储到/usr/include 例如最常见的几个头文件: 又比如 ...

  8. linux只提取前两个目录名,Linux技巧:介绍从目录路径获取文件名和目录前缀的方法...

    使用 dirname 命令获取路径名的目录部分 在 Linux 中,可以使用 dirname 命令获取路径名的目录部分,不包含路径名最后的文件名. 查看 man dirname 的说明如下: dirn ...

  9. linux文件传输到另一台linux,使用scp将文件/目录拷贝到另一台Linux主机上

    如何将一台Linux主机上的文件或目录拷贝到另一台Linux主机上,scp命令可以实现该需求 前提条件:两台Linux主机处于同一网段,可以互相ping通 操作如下: 文件拷贝 ①将本地文件拷贝到远端 ...

最新文章

  1. 完美设置“Word表格中文字上下居中”
  2. 为什么Android项目mainactivity中有一个变量R_博客笔记大汇总,Android优化总结篇
  3. 【渝粤教育】国家开放大学2018年春季 8634-22TAndroid智能手机编程 参考试题
  4. Mac系统打开dmg文件出现“资源忙”的解决方法
  5. 软件开发模型_20202021企业软件开发流程(5)软件开发过程模型瀑布模型(2)软件设计、编码...
  6. Folder and jar
  7. 查询接待收待飞地数量失败_中国有哪些飞地?
  8. 宋体(Simsun)和新宋体(NSimsun)的区别
  9. 丹尼尔·惠灵顿(Daniel Wellington)选择一洽的理由
  10. 山寨智能机多采用盗版Windows Mobile系统
  11. 华为路由模拟器3.0参考实验7----直连路由无法ping通解决办法
  12. 2021牛客多校#10 F-Train Wreck(数学,优先队列)
  13. 解决Only fullscreen activities can request orientation的方法
  14. linux中pid gid tgid tid的区别和联系
  15. Mac开不了机怎么办?
  16. Python基础学习视频
  17. 计算机类基金有哪些2019,2019年度国家自然科学基金最终立项数据,哪些高校表现突出?...
  18. ios 编译时报 Could not build module xxx 的解决方法尝试
  19. 开源中国源码学习(五)——切换皮肤(日间模式和夜间模式)
  20. lqc_更新系统+弱口令扫描+nmap

热门文章

  1. python使用笔记:sys.argv[]的使用
  2. PyCharm使用技巧:PyCharm重构
  3. (转载)Xcode中other linker flags的作用
  4. 工作中linux定时任务的设置及相关配置
  5. 架设自己的WebDAV服务器作为AutoCAD WS的数据存储
  6. 浅析:setsockopt()改善程序的健壮性【转】
  7. Docker 概念详解
  8. unity 优秀开源项目
  9. 企业数据中心和互联网数据中心有何不同?
  10. VisualSVN5.1.7补丁原创发布