pushd

popd コマンドで使用する現在のディレクトリを格納し、指定したディレクトリに変更します。

pushd コマンドを使用するたびに、使用できるように 1 つのディレクトリが保存されます。 ただし、 pushd コマンドを複数回使用することで、複数のディレクトリを格納できます。 ディレクトリは仮想スタックに順次格納されるため、 pushd コマンドを一度使用すると、コマンドを使用するディレクトリがスタックの一番下に配置されます。 コマンドをもう一度使用すると、2 番目のディレクトリが最初のディレクトリの上に配置されます。 このプロセスは、 pushd コマンドを使用するたびに繰り返されます。

popd コマンドを使用すると、スタックの最上位にあるディレクトリが削除され、現在のディレクトリがそのディレクトリに変更されます。 popd コマンドを再度使用すると、スタック上の次のディレクトリが削除されます。 コマンド拡張が有効になっている場合、 popd コマンドは pushd コマンドによって作成されたドライブ文字の割り当てをすべて削除します。

Syntax

pushd [<path>]

Parameters

Parameter Description
<path> 現在のディレクトリにするディレクトリを指定します。 このコマンドは相対パスをサポートします。
/? コマンド プロンプトにヘルプを表示します。

Remarks

  • コマンド拡張が有効になっている場合、 pushd コマンドはネットワークパスまたはローカルドライブ文字とパスのいずれかを受け入れます。

  • ネットワークパスを指定すると、 pushd コマンドは、指定されたネットワークリソースに、未使用の最大のドライブ文字 (Z: で始まる) を一時的に割り当てます。 その後、コマンドによって、現在のドライブとディレクトリが、新しく割り当てられたドライブ上の指定されたディレクトリに変更されます。 コマンド拡張子を有効にして popd コマンドを使用すると、 popd コマンドは pushd によって作成されたドライブ文字の割り当てを削除します。

Examples

現在のディレクトリをバッチ プログラムが実行されたディレクトリから変更し、元に戻すには、次のようにします。

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