Linux stat函数和stat命令(5)

12,chown函数:改变文件的所属用户和组

#include <unistd.h> int chown(const char *pathname, uid_t owner, gid_t group);

pathname:文件

owner:用户ID(数字的)/etc/passwd

group:组ID(数字的)/etc/group

返回值:0成功,-1失败。

13,rename函数:重命名

#include <stdio.h> int rename(const char *oldpath, const char *newpath);

oldpath :原来的文件名后者目录

newpath:新的文件名后者目录

返回值:0成功,-1失败。

14,getcwd函数:获得当前工作的目录

#include <unistd.h> char *getcwd(char *buf, size_t size);

buf:当前工作的目录

size:缓冲区大小

返回值:

成功返回当前工作的目录

失败返回NULL

15,chdir函数:改变进程的工作目录

#include <unistd.h> int chdir(const char *path);

path:目标工作目录

返回值:0成功,-1失败

16,mkdir函数:创建目录

#include <sys/stat.h> #include <sys/types.h> int mkdir(const char *pathname, mode_t mode);

pathname:目标工作目录

mode:mode & ~umask & 0777 。注意,如果没有x权限,则无法cd进入这个目录。

返回值:0成功,-1失败

17,rmdir函数:删除目录,目录必须是空目录,也就是里面没有任何文件。

#include <unistd.h> int rmdir(const char *pathname);

18,opendir函数:打开目录

#include <sys/types.h> #include <dirent.h> DIR *opendir(const char *name);

name:目录名

返回值:a pointer to the directory stream

19,readdir函数:读目录

#include <dirent.h> struct dirent *readdir(DIR *dirp); struct dirent { ino_t d_ino; /* Inode number */ off_t d_off; /* Not an offset; see below */ 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]; /* Null-terminated filename */ };

dirp:opendir函数的返回值

返回值:结构体dirent,可以理解成最上面说的【目录项】

NULL代表读到末尾或者有错误

NULL以外代表目录项的内容

20,closedir函数:关闭目录

#include <sys/types.h> #include <dirent.h> int closedir(DIR *dirp);

dirp:opendir函数的返回值

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/cece8045ebccfb7b6acd45f696ad5274.html