pwd
Developer(s) | AT&T Bell Laboratories |
---|---|
Initial release | June 1974 |
Operating system | Unix and Unix-like |
Type | Command |
License | coreutils: GNU GPL v3 |
In Unix-like and some other operating systems, the pwd
command (print working directory)[1][2][3][4][5]
writes the full pathname of the current working directory to the standard output.[6][7][8][9][10]
Implementations
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,[11] PANOS,[12] and KolibriOS.[13] 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
. The OpenVMS equivalent is show default
.
The version of pwd
bundled in GNU coreutils was written by Jim Meyering.[14]
The numerical computing environments MATLAB and GNU Octave include a pwd
function with similar functionality.[15][16]
*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:[17]
OLDPWD – The previous working directory (as set by the cd command). PWD – The current working directory (as set by the cd command).
See also
- Breadcrumb (navigation), an alternative way of displaying the work directory
- List of GNU Core Utilities commands
- List of Unix commands
pushd
andpopd
References
- ^ UNIX TIME-SHARING SYSTEM: UNIX PROGRAMMER’S MANUAL Seventh Edition, Volume 1 (January, 1979) by Bell labs, Page 142
- ^ Minix MAN page
- ^ Linux MAN page
- ^ GNU Coreutils MAN page
- ^ Bell Labs Plan 9 MAN page
- ^ POSIX Standard (IEEE Std 1003.1) pwd page
- ^ DEC OSF/1 MAN page
- ^ Apple OS X MAN page
- ^ OpenBSD MAN page
- ^ OpenSolaris MAN page
- ^ SpartaDOS X 4.48 User Guide
- ^ http://chrisacorns.computinghistory.org.uk/Panos.html#CL
- ^ http://wiki.kolibrios.org/wiki/Shell
- ^ https://linux.die.net/man/1/pwd
- ^ https://www.mathworks.com/help/matlab/ref/pwd.html
- ^ https://octave.sourceforge.io/octave/function/pwd.html
- ^ POSIX Standard (IEEE Std 1003.1) cd page