Change the current directory, and push the old current directory onto the directory stack.
pushd [ -sLP ] [ arg ]
or
pushd [ -sLP ] old new
Change the current directory to arg
. If arg
is not specified, change to the second directory on the stack (that is, exchange the top two entries), or change to $HOME
if the PUSHD_TO_HOME
option is set or if there is only one entry on the stack. Otherwise, arg
is interpreted as it would be by cd.The meaning of old and new is the same as for cd
.
pushd [ -sLP ] {+|-}n
Changes directory by rotating the directory list. An argument of the form +n
identifies a stack entry by counting from the left of the list shown by the dirs command, starting with zero. An argument of the form -n
counts from the right. If the PUSHD_MINUS
option is set, the meanings of +
and -
in this context are swapped.
If the option PUSHD_SILENT
is not set, the directory stack will be printed after a pushd
is performed.
The options -s
, -L
and -P
have the same meanings as for the cd builtin.