linux文件操作函数

一、目录与文件操作

  1. opendir 函数
    • 功能:打开一个目录获得一个目录流指针。
    • 函数原型:DIR *opendir(const char *name);
    • 成功返回目录流指针,失败返回 NULL 。
  2. readdir 函数
    • 功能:从目录流中读取文件信息并返回保存信息的结构体地址。
    • 函数原型:struct dirent *readdir(DIR *dirp);
    • 出错或者读到目录流末尾返回 NULL 。
  3. closedir 函数
    • 功能:关闭之前已经打开的目录流对象。
    • 函数原型:int closedir(DIR *dirp);
    • 成功返回 0 ,失败返回 -1 。
  4. chdir 函数(类似 cd 命令)
    • 功能:改变当前程序的工作路径。
    • 函数原型:int chdir(const char *path);
    • 成功返回 0 ,失败返回 -1 。
  5. getcwd 函数(类似 pwd 命令)
    • 功能:获得当前的工作路径。
    • 函数原型:char *getcwd(char *buf, size_t size);
    • 成功返回包含路径空间的字符串首地址,失败返回 NULL 。
  6. mkdir 函数
    • 功能:创建一个目录。
    • 函数原型:int mkdir(const char *pathname, mode_t mode);
    • 成功返回 0 ,失败返回 -1 。
  7. rmdir 函数
    • 功能:删除一个空目录文件。
    • 函数原型:int rmdir(const char *pathname);
    • 成功返回 0 ,失败返回 -1 。

二、文件属性获取

  1. stat 函数
    • 功能:获得文件的属性。
    • 函数原型:int stat(const char *path, struct stat *buf);
    • 成功返回 0 ,失败返回 -1 。

三、用户和组信息获取

  1. getpwuid 函数
    • 功能:根据用户 id 到 /etc/passwd 文件下解析获得结构体信息。
    • 函数原型:struct passwd *getpwuid(uid_t uid);
    • 成功返回 id 对应用户的信息,失败返回 NULL 。
  2. getpwnam 函数
    • 功能:根据用户名到 /etc/passwd 文件下解析获得结构体信息。
    • 函数原型:struct passwd *getpwnam(const char *name);
  3. getgrgid 函数
    • 功能:根据 gid 到 /etc/group 文件中解析组信息。
    • 函数原型:struct group *getgrgid(gid_t gid);
    • 成功返回组信息,失败返回 NULL 。
  4. getgrnam 函数
    • 功能:根据组名到 /etc/group 文件中解析组信息。
    • 函数原型:struct group *getgrnam(const char *name);

四、链接文件操作

  1. symlink 函数
    • 功能:创建一个链接向 oldpath 文件的新符号链接文件。
    • 函数原型:int symlink(const char *oldpath, const char *newpath);
    • 成功返回 0 ,失败返回 -1 。
  2. remove 函数
    • 功能:删除一个文件。
    • 函数原型:int remove(const char *pathname);
    • 成功返回 0 ,失败返回 -1 。
  3. rename 函数(类似 mv 命令)
    • 功能:将一个老的路径名改为新的路径。
    • 函数原型:int rename(const char *oldpath, const char *newpath);
    • 成功返回 0 ,失败返回 -1 。
  4. link 函数
    • 功能:创建一个硬链接文件。
    • 函数原型:int link(const char *oldpath, const char *newpath);
    • 成功返回 0 ,失败返回 -1 。

五、出错处理

  1. perror 函数
    • 功能:打印指定字符串和 errno 对应的错误信息。
    • 函数原型:void perror(const char *s);
  2. strerror 函数
    • 功能:打印 errnum 出错码对应的出错信息。
    • 函数原型:char *strerror(int errnum);
  3. error 函数
    • 功能:程序出错打印对应出错原因和用户输入字符串并退出。

六、Makefile 编写

Makefile 是工程管理的重要工具,用于自动化编译和构建项目。

  • 23
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值