Stores the name of the current directory for use by the popd command before changing the current directory to the specified directory.


pushd [Path]


Path   : Specifies the directory to which the current directory should be changed. This command supports relative paths.

/?   : Displays help at the command prompt.


  • Every time you use the pushd command, a single directory is stored for your use. However, you can store multiple directories by using the pushd command multiple times.

    The directories are stored sequentially in a virtual stack. If you use the pushd command once, the directory in which you use the command is placed at the bottom of the stack. If you use the command again, the second directory is placed on top of the first one. The process repeats every time you use the pushd command.

    You can use the popd command to change the current directory to the directory most recently stored by the pushd command. If you use the popd command, the directory on the top of the stack is removed from the stack as the current directory is changed to that directory. If you use the popd command again, the next directory on the stack is removed.

  • If command extensions are enabled, the pushd command accepts either a network path or a local drive letter and path.

  • If you specify a network path, the pushd command temporarily assigns the first unused drive letter (starting with Z:) to the specified network resource. The command then changes the current drive and directory to the specified directory on the newly assigned drive. If you use the popd command with command extensions enabled, the popd command removes the drive-letter assignation created by pushd.


You can use the pushd command and the popd command in a batch program to change the current directory from the one in which the batch program was run and then change it back. The following sample batch program shows how to do this:

@echo off
rem This batch file deletes all .txt files in a specified directory
pushd %1
del *.txt
echo All text files deleted in the %1 directory

Formatting legend




Information that the user must supply


Elements that the user must type exactly as shown

Ellipsis (...)

Parameter that can be repeated several times in a command line

Between brackets ([])

Optional items

Between braces ({}); choices separated by pipe (|). Example: {even|odd}

Set of choices from which the user must choose only one

Courier font

Code or program output



Command-line reference A-Z