2019-03-31 11:05:09 +02:00
.. _cmd-pushd:
2018-12-16 17:39:33 -08:00
pushd - push directory to directory stack
2019-01-02 20:10:47 -08:00
=========================================
2018-12-16 17:39:33 -08:00
2018-12-17 17:58:24 -08:00
Synopsis
--------
2018-12-16 13:08:41 -08:00
2019-09-17 17:59:04 +08:00
::
2018-12-17 17:58:24 -08:00
2019-09-17 17:59:04 +08:00
pushd [DIRECTORY]
2018-12-16 13:08:41 -08:00
2018-12-18 18:44:30 -08:00
Description
2019-01-02 20:10:47 -08:00
-----------
2018-12-16 13:08:41 -08:00
2020-04-04 13:01:53 +02:00
The `` pushd `` function adds `` DIRECTORY `` to the top of the :ref: `directory stack <directory-stack>` and makes it the current working directory. :ref: `popd <cmd-popd>` will pop it off and return to the original directory.
2018-12-16 13:08:41 -08:00
Without arguments, it exchanges the top two directories in the stack.
2018-12-19 12:02:45 -08:00
`` pushd +NUMBER `` rotates the stack counter-clockwise i.e. from bottom to top
2018-12-16 13:08:41 -08:00
2018-12-19 12:02:45 -08:00
`` pushd -NUMBER `` rotates clockwise i.e. top to bottom.
2018-12-16 13:08:41 -08:00
2018-12-18 18:44:30 -08:00
Example
2019-01-02 20:10:47 -08:00
-------
2018-12-16 13:08:41 -08:00
2018-12-18 19:14:04 -08:00
::
2021-05-04 13:21:06 -07:00
cd ~/dir1
pushd ~/dir2
pushd ~/dir3
# Working directory is now ~/dir3
# Directory stack contains ~/dir2 ~/dir1
2019-09-17 16:50:52 +08:00
2021-05-04 13:21:06 -07:00
pushd /tmp
2018-12-18 19:14:04 -08:00
# Working directory is now /tmp
2021-05-04 13:21:06 -07:00
# Directory stack contains ~/dir3 ~/dir2 ~/dir1
2019-09-17 16:50:52 +08:00
2018-12-18 19:14:04 -08:00
pushd +1
2021-05-04 13:21:06 -07:00
# Working directory is now ~/dir3
# Directory stack contains ~/dir2 ~/dir1 /tmp
2019-09-17 16:50:52 +08:00
2018-12-18 19:14:04 -08:00
popd
2021-05-04 13:21:06 -07:00
# Working directory is now ~/dir2
# Directory stack contains ~/dir1 /tmp
2020-04-04 13:01:53 +02:00
See Also
--------
- the :ref: `dirs <cmd-dirs>` command to print the directory stack
- the :ref: `cdh <cmd-cdh>` command which provides a more intuitive way to navigate to recently visited directories.