pwd
| pwd | |
|---|---|
The pwd command | |
| Original author | AT&T Bell Laboratories |
| Developers | 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 |
pwd (print working directory)[1][2][3] is a shell command that reports the working directory path to standard output.[4][5][6][7][8][9][10]
Although often associated with Unix, its predecessor Multics had a pwd command (which was a short name of the print_wdir command[11]) from which the Unix command originated.[12] The command 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.[13] It appeared in Version 5 Unix.[14] The version bundled in GNU Core Utilities was written by Jim Meyering.[15]
The command is available in other shells and operating systems including SpartaDOS X,[16] PANOS,[17] and KolibriOS.[18] PowerShell provides pwd as an alias for the cmdlet Get-Location. An equivalent command in COMMAND.COM and Command Prompt is the cd command with no arguments. On Windows CE 5.0, cmd.exe includes a pwd command.[19] The OpenVMS equivalent is show default.
The numerical computing environments MATLAB and GNU Octave include a pwd
function with similar functionality.[20][21]
The command is implemented as a shell builtin in many Unix shells including sh, ash, bash, ksh, and zsh. It can be implemented with the POSIX getcwd() or getwd() functions.
Examples
[edit]The following examples are based on a typical Unix-based implementation.
With no arguments, the command writes the working directory path to the terminal:
$ cd /home/example $ pwd /home/example
Display the working directory without any symbolic link info. If at a directory /home/symlinked that is a symlink to /home/realdir:
$ cd /home/symlinked $ pwd -P /home/realdir
Display the working directory with symbolic link info. Note: POSIX requires that the default behavior be as if the -L switch were provided.
$ pwd -L /home/symlinked
Shell variables
[edit]POSIX shells set the following environment variables while using the cd command:[22]
- OLDPWD
- The previous working directory
- PWD
- The current working directory
See also
[edit]- Breadcrumb (navigation), an alternative way of displaying the work directory
- List of POSIX commands
pushdandpopd
References
[edit]- ^ "pwd(1) [minix man page]". www.unix.com.
- ^ "pwd - print name of current/working directory - man page". www.mankier.com.
- ^ "GNU Coreutils". www.gnu.org.
- ^ Unix Time-Sharing System: Unix Programmer's Manual (PDF). Vol. 1 (7th ed.). Bell labs. January 1979. p. 142. Archived from the original (PDF) on 2005-05-20.
- ^ "pwd(1) [plan9 man page]". www.unix.com.
- ^ "pwd". pubs.opengroup.org.
- ^ "pwd(1) [osf1 man page]". www.unix.com.
- ^ "Apple OS X MAN page".
- ^ "pwd(1) - OpenBSD manual pages". man.openbsd.org.
- ^ "pwd(1) [opensolaris man page]". www.unix.com.
- ^ "working_dir, wd, print_wdir, pwd (Multics help segment)". MIT. Retrieved 7 March 2020.
- ^ Van Vleck, Tom. "Unix and Multics". Multicians.org. Retrieved 7 March 2020.
- ^ – Shell and Utilities Reference, The Single UNIX Specification, Version 5 from The Open Group
- ^ – FreeBSD General Commands Manual
- ^ – Linux User Manual – User Commands from Manned.org
- ^ "SpartaDOS X 4.48 User Guide" (PDF).
- ^ "Chris's Acorns: Panos". chrisacorns.computinghistory.org.uk.
- ^ "Shell - KolibriOS wiki". wiki.kolibrios.org.
- ^ "Command Processor Commands (Windows CE 5.0)". docs.microsoft.com.
- ^ "Identify current folder - MATLAB pwd". www.mathworks.com.
- ^ "Function Reference: pwd". octave.sourceforge.io.
- ^ "cd". pubs.opengroup.org.
Further reading
[edit]- McElhearn, Kirk (2006). The Mac OS X Command Line: Unix Under the Hood. John Wiley & Sons. ISBN 978-0470113851.
External links
[edit]- – Shell and Utilities Reference, The Single UNIX Specification, Version 5 from The Open Group
- – FreeBSD General Commands Manual
- – NetBSD General Commands Manual
- – OpenBSD General Commands Manual
- – Solaris 11.4 User Commands Reference Manual
- – Linux User Manual – User Commands from Manned.org
- – Plan 9 Programmer's Manual, Volume 1
- – Inferno General commands Manual