linux目录操作函数.pdfVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
linux目录操作函数

Linux 下的目录是依照标准来实作的,因此,您可以毫无问题地移殖到任何其它UNIX 平台。 getcwd/getwd : 取得目前所在目录 #include char * getcwd(char *buf,size_t size); buf 将会返回目前路径名称。 任何的错误发生,将会返回NULL。如果路径长度超过size,errno 为ERANGE。getcwd 返回的值永远 是没有symbol link 的。 #include char *getwd(char *buf); getwd 是个危险的函数,一般都会强烈建议不要用,因为您无法确定最长的目录长度为多少。PATH_MAX 定义了最长的路径长度。在Linux 下所以提供这个函数主要是因为「传统」。 //获取系统目录最大长度 long pathconf(char* path, int flag); chdir/fchdir/chroot : 改变目前所在目录 #include int chdir(const char * pathname); int fchdir(int fd); chdir 根据pathname 变更目前的所在目录,它只改变该程式的所在目录。 fchdir 根据已开启的fd(file descriptor) 目录来变更。 //sample /*更改当前工作目录到上级目录*/ if(chdir(..)==-1){ perror(Couldnt change current working directory.\n); return 1; } #include int chroot(const char * path); chroot 改变该程式的根目录所在。例如chroot(/home/ftp)会将根目录换到/home/ftp 下,而所有档 案操作都不会超出这个围内。为保障安全性,当chdir(/..)时,将会仅切换到chdir(/),如此便不会 有档案安全问题。 mkdir/rmdir : 造/移除目录 #include sys/stat.h #include sys/types.h int mkdir(const char * dirname,mode_t mode); mkdir 会造一个新目录出来,例如mkdir(/home/foxman,0755);。 如果该目录或档案已经存在,则操作失败。 /*mode 设置为0700,开始的0 表示八进制*/ if(mkdir(/home/zxc/z, 0700) == -1){ perror(Couldnt create the directory.\n); return 1; } #include unistd.h int rmdir(char * pathname); 这个函数移除pathname 目录。 //获得文件信息 #include sys/types.h sys/stat.h unistd.h int stat(const char* path, struct stat* buf); int fstat(int filedes, struct stat* buf); int lstat(const char* path, struct stat* buf); opendir/readdir/closedir/rewinddir : 读取目录资讯 #include DIR * opendir(const char * pathname); int closedir(DIR *dir); struct dirent * readdir(DIR *dir); int rewinddir(DIR *dir); struct dirent { long d_ino; /* inode number */ off_t d_off; /* offset to this dirent */ unsigned short d_reclen; /* length of this d_name */ char d_name [NAME_MAX+1]; /* file name (null-terminated) */ }; opendir 开启一个目录操作DIR,closedir 关闭之。 readdir 则循序读取目录中的资讯,rewinddir 则可重

您可能关注的文档

文档评论(0)

shaoyifen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档