In computing, the working directory of a process is a directory of a hierarchical file system, if any, dynamically associated with each process. When the process refers to a file using a simple file name or relative path (as opposed to a file designated by a full path from a root directory), the reference is interpreted relative to the current working directory of the process. So for example a process with working directory /rabbit-hats that asks to create the file foo.txt will end up creating the file /rabbit-hats/foo.txt.
In most computer file systems, every directory has an entry (usually named ".") which points to the directory itself.
In most DOS and UNIX command shells, as well as in the Microsoft Windows command line interpreters cmd.exe and Windows PowerShell, the working directory can be changed by using the cd or chdir commands. In Unix shells, the pwd command outputs the absolute pathname of the current working directory; the equivalent command in DOS and Windows is cd without arguments (whereas in Unix, cd used without arguments takes the user back to his/her home directory). The environment variable PWD (in Unix/Linux shells) or CD (in DOS/Windows shells) is also set for use in scripts, so that one need not start an external program. The POSIX function chdir(), where available, can be called by a process to set its working directory.
See also 
- There are operating systems that support a hierarchical file system but have no concept of "working directory"; for example Texas Instruments' DX10, used for the TI-990 series.
- Working Directory (wd) at Freecode – a software package that tracks commonly used directories in a bash session
|This computer storage–related article is a stub. You can help Wikipedia by expanding it.|