chdir() - Unix、Linux 系统调用
Tutorials Point


  Unix 初学者指南
  Unix Shell 编程
  高级 Unix
  Unix 有用参考
  Unix 有用资源
  精选阅读

版权所有 © 2014 tutorialspoint



  首页     参考     讨论论坛     关于 TP  

chdir() - Unix、Linux 系统调用


previous next AddThis Social Bookmark Button

广告

名称

chdir、fchdir - 更改工作目录

语法

#include <unistd.h> 

int chdir(const char *path); int fchdir(int fd);

描述

chdir() 将当前工作目录更改为path中指定的工作目录。fchdir() 与chdir() 相同;唯一的区别在于目录作为打开的文件描述符给出。

返回值

成功时,返回零。错误时,返回 -1,并且errno被相应地设置。

错误

根据文件系统,可以返回其他错误。下面列出了chdir() 的更一般的错误

错误代码描述
EACCES path路径前缀中的某个目录的搜索权限被拒绝。(另请参见path_resolution(2)。)
EFAULT path指向您可访问的地址空间之外。
EIO 发生 I/O 错误。
ELOOP 在解析path时遇到太多符号链接。
ENAMETOOLONG path太长。
ENOENT 文件不存在。
ENOMEM 内核可用内存不足。
ENOTDIR path的一个组件不是目录。
下面列出了fchdir() 的一般错误
EACCES fd上打开的目录上拒绝搜索权限。
EBADF fd不是有效的文件描述符。

备注

通过fork(2) 创建的子进程继承其父进程的当前工作目录。execve(2) 不更改当前工作目录。

仅当定义了_BSD_SOURCE_XOPEN_SOURCE且值为 500 时,fchdir() 的原型才可用。

符合标准

SVr4、4.4BSD、POSIX.1-2001。

参见



previous next Printer Friendly

广告


  

广告



广告