设为首页 加入收藏

TOP

Linux下文件属性的获取
2014-11-24 13:15:19 来源: 作者: 【 】 浏览:0
Tags:Linux 文件 属性 获取

1. 数据结构和系统调用


在Linux下进行C/C++编程,主要通过以下三个系统调用来获取文件(普通文件,目录,管道,socket,字符,块等)属性。


头文件“#include


(1) //通过文件名称获取文件属性


int stat(const char *restrict pathname, struct stat *restrict buf);


(2) //通过文件描述符获取文件属性


int fstat(int filedes, struct stat *buf);


(3) //通过符号文件名称获取文件属性


int lstat(const char *restrict pathname, struct stat *restrict buf);


返回值(三个函数一样)


成功:0


失败:-1


三个系统调用的区别:


1. fstat接受的第一个参数是“文件描述符”,stat和lstat是“文件全路径”,文件描述符需要用调用open之后才能得到,文件全路经直接写即可;


2. lstat获取的是该符号链接本身的信息;而stat获取的是该链接指向的文件的信息;


这三个系统调用都依赖一个重要的结构体struct stat


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇System V init启动与Busybox init.. 下一篇C/C++中的时间操作

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: