Pwd
Template:Short description
{{#invoke:other uses|otheruses}}
Template:Lowercase
Template:Infobox software
pwd (print working directory)<ref name="minix">Template:Cite web</ref><ref name="linux">Template:Cite web</ref><ref name="gnu">Template:Cite web</ref> is a shell command that reports the working directory path to standard output.<ref name="unix">Template:Cite book</ref><ref name="plan9">Template:Cite web</ref><ref name="posix">Template:Cite web</ref><ref name="dec">Template:Cite web</ref><ref name="apple">Template:Cite web</ref><ref name="bsd">Template:Cite web</ref><ref name="solaris">Template:Cite web</ref>
Although often associated with Unix, its predecessor Multics had a pwd command (which was a short name of the print_wdir command<ref>Template:Cite web</ref>) from which the Unix command originated.<ref>Template:Cite web</ref> 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.<ref>Template:Man</ref> It appeared in Version 5 Unix.<ref>Template:Man</ref> The version bundled in GNU Core Utilities was written by Jim Meyering.<ref>Template:Man</ref>
The command is available in other shells and operating systems including SpartaDOS X,<ref>Template:Cite web</ref> PANOS,<ref>Template:Cite web</ref> and KolibriOS.<ref>Template:Cite web</ref> PowerShell provides <syntaxhighlight lang="text" class="" style="" inline="1">pwd</syntaxhighlight> 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.<ref>Template:Cite web</ref> The OpenVMS equivalent is show default.
The numerical computing environments MATLAB and GNU Octave include a pwd
function with similar functionality.<ref>Template:Cite web</ref><ref>Template:Cite web</ref>
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
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
POSIX shells set the following environment variables while using the <syntaxhighlight lang="text" class="" style="" inline="1">cd</syntaxhighlight> command:<ref>Template:Cite web</ref>
- OLDPWD
- The previous working directory
- PWD
- The current working directory
See also
- Breadcrumb (navigation), an alternative way of displaying the work directory
- List of POSIX commands
pushdandpopd
References
Further reading
External links
- Template:Man
- Template:Man
- Template:Man
- Template:Man
- Template:Man
- Template:Man
- Template:Man
- Template:Man
Template:Unix commands Template:Plan 9 commands Template:GNU Template:Core Utilities commands