Seth Woolley's Man Viewer

chdir(2) - chdir, fchdir, chdir, fchdir - change working directory - man 2 chdir

([section] manual, -k keyword, -K [section] search, -f whatis)
man plain no title

CHDIR(2)                   Linux Programmer's Manual                  CHDIR(2)

       chdir, fchdir - change working directory

       #include <unistd.h>

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

       chdir changes the current directory to that specified in(1,8) path.

       fchdir is identical to chdir; the only difference is that the directory
       is given as an open(2,3,n) file(1,n) descriptor.

       On success, zero is returned.  On error(8,n), -1 is returned, and  errno  is
       set(7,n,1 builtins) appropriately.

       Depending  on  the file(1,n) system, other errors can be returned.  The more
       general errors for chdir are listed below:

       EACCES Search permission is denied for one of the  directories  in(1,8)  the
              path prefix of path.  (See also path_resolution(2).)

       EFAULT path points outside your accessible address space.

       EIO    An I/O error(8,n) occurred.

       ELOOP  Too many symbolic links were encountered in(1,8) resolving path.

              path is too long.

       ENOENT The file(1,n) does not exist.

       ENOMEM Insufficient kernel memory was available.

              A component of path is not a directory.

       The general errors for fchdir are listed below:

       EACCES Search permission was denied on the directory open(2,3,n) on fd.

       EBADF  fd is not a valid file(1,n) descriptor.

       The  prototype  for  fchdir is only available if(3,n) _BSD_SOURCE is defined
       (either explicitly, or implicitly, by  not  defining  _POSIX_SOURCE  or
       compiling with the -ansi flag).

       The  chdir  call  is compatible with SVr4, SVID, POSIX, X/OPEN, 4.4BSD.
       SVr4 documents additional EINTR, ENOLINK, and  EMULTIHOP  error(8,n)  condi-
       tions  but  has no ENOMEM.  POSIX.1 does not have ENOMEM or ELOOP error(8,n)
       conditions.  X/OPEN does not have EFAULT, ENOMEM or  EIO  error(8,n)  condi-

       The fchdir call is compatible with SVr4, 4.4BSD and X/OPEN.  SVr4 docu-
       ments additional EIO, EINTR, and ENOLINK error(8,n) conditions.  X/OPEN doc-
       uments additional EINTR and EIO error(8,n) conditions.

       chroot(1,2)(2), path_resolution(2), getcwd(3)

Linux 2.6.7                       2004-06-23                          CHDIR(2)

References for this manual (incoming links)