文件和目录属性
2016-06-28 19:59
337 查看
文件和目录
文件属性的获取
返回filename有关的信息的结构体,然后放到buf中。int stat(const char* filename, struct stat *buf);
将已经打开的文件(fd所描述的文件)的信息保存到buf中。
int fstat(int fd, struct stat *buf);
类似于stat,只是当filename是一个符号链接,类似与快捷方式时,buf中保存的是该符号链接的有关信息,而不是所链接的文件的信息。
其中,struct stat结构体保存着文件相关的信息,包括结点号, 用户id,
文件大小st_size等等。
int lstat(const char* filename, struct stat *buf);
文件类型的检测
利用宏来确定文件类型,一下这些宏都是struct stat结构体中st_mode的成员。S_ISREG(m) // 判断m是不是一个regular file S_ISDIR // 文件夹 ...
目录操作
#include <sys/types.h> #include <dirent.h> //改变工作路径,成功返回0,失败返回-1 int chdir(const char *path); //改变目录到path int fchdir(int fd);//区别在于,fd是目录的文件描述符而已 //打开目录name,成功返回目录指针 DIR *opendir(const char *name); DIR *fdopendir(int fd); //访问文件夹dirname/,并把文件夹下的内容保存到struct dirent结构体中 struct dirent *readdir(DIR* dirname); struct dirent { ino_t d_ino; /* inode number */ off_t d_off; /* not an offset; see NOTES */ unsigned short d_reclen; /* length of this record */ unsigned char d_type; /* type of file; not supported by all filesystem types */ char d_name[256]; /* filename */ };
相关文章推荐
- Linux文件属性详细图解
- Linux文件属性与用户组
- [Linux文件属性]使用fcntl函数获取文件标志
- [Linux文件属性]使用dup函数复制文件描述符
- [Linux文件属性]使用symlink函数建立符号链接文件
- [Linux文件属性]使用remove函数删除指定文件
- [Linux文件属性]使用rename函数修改文件名称
- [Linux文件属性]使用chmod函数修改指定文件权限
- [Linux文件属性]使用umask函数指定新建文件权限
- [Linux文件属性]使用access函数测试文件的权限
- [Linux文件属性]使用utime函数操作文件的时间参数
- [Linux文件属性]使用lstat函数获得指定文件的属性
- [Linux文件属性]使用stat函数获得指定文件的属性
- 如何改变Linux文件权限
- Linux下的文件和文件夹
- Linux下修改文件属性 —— chattr和lsattr命令介绍
- linux之文件属性
- Linux文件权限基本属性图文详解
- strace-跟踪进程执行时的系统调用
- Linux系统中动态库的链接和链接选项