; Change directory: Many
shells provide a
cd command for setting the working directory. Some systems provide a command with a different name. For example, is an alternate name for in DOS/Windows. ; Report: Commands for reporting the working directory vary more than setting it. Typically, a
Unix shell provides the command
pwd (short for
print working directory) that reports the absolute path to the working directory. The equivalent command in DOS/Windows is cd without
arguments. Using cd without arguments in Unix-like systems generally sets the working directory to the user's
home directory. ; Scripting: To ease scripting development, some shells provide a
variable that contains the working-directory path. Typically, a Unix-like shell provides an
environment variable named PWD. Windows shells
COMMAND.COM and
cmd.exe provide a
pseudo-environment variable named
CD. Shells
4DOS,
4OS2, and
4NT provide _CWD, _CWDS, _CWP, and _CWPS ; Command-line prompt: The working directory is displayed by the $P token of the
DOS prompt command. To keep the prompt short in a deep directory, the DR-DOS 7.07 COMMAND.COM supports a $W token to display only the deepest subdirectory level. So, where a default PROMPT $P$G would result f.e. in C:\DOS> or C:\DOS\DRDOS>, a PROMPT $N:$W$G would instead yield C:DOS> and C:DRDOS>, respectively. A similar facility (using $W and $w) was added to
4DOS as well. ; State for each DOS drive: Under DOS, the absolute path to the working directory for each logical volume is stored as the current directory structure (CDS). It is allocated at boot time with a slot for each logical drive (or as defined by
LASTDRIVE). This structure imposes a length-limit of 66 characters on the full path of each working directory, and thus implicitly also limits the maximum possible depth of subdirectories. :
DOS Plus and older issues of DR DOS (up to
DR DOS 6.0, with
BDOS 6.7 in 1991) had no such limitation due to their implementations using
DOS emulation on top of a
Concurrent DOS- (and thus
CP/M-86-)derived kernel, which internally organized subdirectories as
relative links to parent directories instead of as
absolute paths. Since
PalmDOS (with BDOS 7.0) and DR DOS 6.0 (1992 update with BDOS 7.1) and higher switched to use a CDS for
maximum compatibility with DOS programs as well, they faced the same limitations as present in other DOSes. ; High-level language access: Most
programming-language environments provide an
application programming interface to the
file system for getting and setting the working directory. : The
POSIX-defined function chdir() (accessible via
C and the many languages that interoperate with it) is a
system call that changes the working directory. Its argument is a
text string that is a path to the target directory, either absolute or relative to the existing value. :
Visual Basic provides the same functionality via a function with the same name. : In
Java, the working directory can be obtained via the java.nio.file.Path interface, or the java.io.File class. The working directory cannot be changed. ==Examples==