您的位置:首页 > 运维架构 > Linux

C语言目录操作 (Linux/Unix)

2012-04-24 14:55 344 查看
获得工作目录:#include <unistd.h> char *getcwd(char *buf,size_t size);char *getwd(char *buf);/*this is for FreeBSD*/

改变当前目录:#include <unistd.h> int chdir(const char *path);

保存当前目录:#include <unistd.h> int fchdir(int fd);

建立新目录:#include <sys/type.h> #include <sys/stat.h> int mkdir(const char *path,mode_t mode);

删除目录:#include <unistd.h> int rmdir(const char* path);

打开目录进行收索:#include <sys/type.h>#include <dirent.h>DIR *opendir(const char *pathname); int dirfd(DIR *dirp);

关闭目录:#include <sys/types.h>#include <dirent.h>int closedir(DIR *dirp);

搜索目录:#include <sys/type.h>#include <dirent.h> struct dirent *readdir(DIR *dirp);

重新回到目录的开始:#<sys/type.h>#include <dirent.h>void rewinddir(DIR *dirp);

保存目录中的位置:#include <sys/type.h>#include <dirent.h>long telldir(const DIR *dirp);

目录内恢复位置:#include <sys/type.h>#include <dirent.h>void seekdir(DIR *dirp,long loc);

扫描目录: #include <sys/type.h>#include <dirent.h>int scandir(const char *diename,struct dirent ***namelist,int (*select)(struct dirent *),int (*compar)(const void *,const viod*));

遍历目录结构:#include <ftw.h>int ftw(const char* path,int(*fn)(const char *obj_path,const struct stat *obj_stat,int obj_flags),int depth);

int nftw(const char* path,int(*fn)(const char *obj_path,const struct stat *obj_stat,int obj_flags,struct FTW obj_FTW),int depth,int flags);

改变根目录:#include <unistd.h>int chroot(const char *dirname);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  语言 c path 工作