Pwd
# Pwd

In Unix-like and some other operating systems, the pwd command (print working directory) writes the full pathname of the current working directory to the standard output.

## Implementations

Multics had a pwd command (which was a short name of the print_wdir command) from which the Unix pwd command originated. The command is a shell builtin in most Unix shells such as Bourne shell, ash, bash, ksh, and zsh. It can be implemented easily with the POSIX C functions getcwd or getwd.

It is also available in the operating systems SpartaDOS X, PANOS, and KolibriOS. The equivalent on DOS (COMMAND.COM) and Microsoft Windows (cmd.exe) is the cd command with no arguments. Windows PowerShell provides the equivalent Get-Location cmdlet with the standard aliases gl and pwd. On Windows CE 5.0, the cmd.exe Command Processor Shell includes the pwd command.

pwd as found on Unix systems is part of the X/Open Portability Guide since issue 2 of 1987. It was inherited into the first version of POSIX.1 and the Single Unix Specification. It appeared in Version 5 Unix. The version of pwd bundled in GNU coreutils was written by Jim Meyering.

The numerical computing environments MATLAB and GNU Octave include a pwd function with similar functionality. The OpenVMS equivalent is show default.

## *nix examples

| Command | Explanation |
| - | - |
| pwd | Display the current working directory. Example: /home/foobar |
| pwd -P | Display the current working directory physical path - without symbolic link name, if any. Example: If standing in a dir /home/symlinked, that is a symlink to /home/realdir, this would show /home/realdir |
| pwd -L | Display the current working directory logical path - with symbolic link name, if any. Example: If standing in a dir /home/symlinked, that is a symlink to /home/realdir, this would show /home/symlinked |

Note: POSIX requires that the default behavior be as if the -L switch were provided.

## Working directory shell variables

POSIX shells set the following environment variables while using the cd command:

### OLDPWD

    The previous working directory (as set by the cd command).

### PWD

    The current working directory (as set by the cd command).
