The pwd command | |
Original author(s) | AT&T Bell Laboratories |
---|---|
Developer(s) | Various open-source and commercial developers |
Initial release | June 1974 |
Written in | C |
Operating system | Multics, Unix, Unix-like, V, Plan 9, Inferno, SpartaDOS X, PANOS, Windows CE, KolibriOS |
Platform | Cross-platform |
Type | Command |
License | coreutils: GPLv3+ Plan 9: MIT License |
In Unix-like and some other operating systems, the pwd
command (print working directory)[1][2][3] writes the full pathname of the current working directory to the standard output.[4][5][6][7][8][9][10]
Multics had a pwd
command (which was a short name of the print_wdir
command)[11] from which the Unix pwd command originated.[12] 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,[13] PANOS,[14] and KolibriOS.[15] 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.[16]
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.[17] It appeared in Version 5 Unix.[18] The version of pwd
bundled in GNU coreutils was written by Jim Meyering.[19]
The numerical computing environments MATLAB and GNU Octave include a pwd
function with similar functionality.[20][21] The OpenVMS equivalent is show default
.
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.
POSIX shells set the following environment variables while using the cd command:[22]