chdir, fchdir - Changes the current directory
int chdir (
const char *path );
int fchdir (
int filedes );
Interfaces documented on this reference page conform to industry standards as follows:
chdir(): POSIX.1, XPG4, XPG4-UNIX
fchdir(): POSIX.1, XPG4-UNIX
Refer to the standards(5) reference page for more information about industry standards and associated tags.
Points to the pathname of the directory. Specifies the file descriptor of the directory.
The chdir() function changes the current directory to the directory indicated by the path parameter.
The fchdir() function changes the current directory to the directory indicated by the filedes parameter. If the path parameter refers to a symbolic link, the chdir() function sets the current directory to the directory pointed to by the symbolic link.
The current directory, also called the current working directory, is the starting point of searches for pathnames that do not begin with a / (slash). In order for a directory to become the current directory, the calling process must have search access to the directory.
The current working directory is shared between all threads within the same process. Therefore, one thread using the chdir() or fchdir() functions will affect every other thread in that process.
Upon successful completion, the chdir() function returns a value of 0 (zero). Otherwise, a value of -1 is returned and errno is set to indicate the error.
If the chdir() function fails, the current directory remains unchanged and errno may be set to one of the following values: Search access is denied for any component of the pathname. The path parameter points outside the process's allocated address space. An I/O error occurred while reading from or writing to the file system. Too many symbolic links were encountered in translating the pathname. The length of the path argument exceeds PATH_MAX or a pathname component is longer than NAME_MAX. The named directory does not exist, or is an empty string. A component of the path prefix is not a directory.
If the fchdir() function fails, the current directory remains unchanged and errno may be set to one of the following values: The filedes parameter is not a valid open file descriptor. The file descriptor does not reference a directory.
Standards: standards(5) delim off