Programming Field

DOS コマンド一覧

Cd, Chdir

「カレントディレクトリ」(Current directory; 現在のディレクトリ)を変更します(『Change Directory の略です)。

構文

cd | chdir [/D] <directory>
cd | chdir [<drive>:]
cd | chdir
このコマンドは「cd」でも「chdir」でもどちらでも構いません。
<directory>
移動するディレクトリを指定します。
特殊なディレクトリに「..」(1 つ上のディレクトリ)、「.」(カレントディレクトリ)、「\」(一番上のディレクトリ) があり、これらを指定することもできます。
ドライブを変更するには、Cd/Chdirを用いずプロンプト上で直接「x:」(x はドライブ文字) と入力します。
/D
[Windows NT系] <directory> がドライブ文字を含む絶対パスの場合、カレントドライブ(現在のドライブ)も同時に変更します。
<drive>:
「ドライブごとのカレントディレクトリ」を表示します。ドライブ文字の後ろに必ずコロン「:」が必要です。
省略した場合(「cd」または「chdir」のみを入力した場合)はカレントドライブ(現在のドライブ)に対応するカレントディレクトリを表示します。

解説

プロンプト(セッション)には「カレントディレクトリ」と「カレントドライブ」があります。カレントディレクトリはプロンプトで「C:\WINDOWS>」と表示されている時(Promptが「$p$g」設定の時)、下線部で示した部分と一致します。Chdirはこの中で「カレントディレクトリ」のみを変更します([Windows NT系] 「/D」スイッチを使った場合を除く)。

なお、カレントディレクトリはドライブごとに存在します。詳しくは「DOS/Windowsのカレントディレクトリ」をご覧ください。

[Windows NT系] 現在のカレントディレクトリを一時保存し、移動して作業を終えた後に元のディレクトリに戻りたい場合はPushdPopdコマンドの組み合わせを使います。また、Setlocal実行後にカレントディレクトリを変更した場合はEndlocal(またはバッチファイルの終了)によってカレントディレクトリがSetlocal実行時のものに戻ります。

[Windows NT系] [拡張構文] 拡張機能が有効になっている場合、Chdirの実行時に以下の挙動が追加されます。

サンプル1
chdir Temp

「Temp」ディレクトリに移動します。

サンプル2
cd ..

1つ上のディレクトリに移動します。

サンプル3
D:
cd \MyData\Music

「D:\MyData\Music」をカレントディレクトリにします。(※ 「D:」でドライブを移動しないと(「cd D:\MyData\Music」とだけ指定しても)、カレントドライブが変わらないためそのままではカレントディレクトリが変わっていない状態になります。)

※ 「cd D:\MyData\Music」は「Dドライブのカレントディレクトリを変更する」という意味になるため、カレントドライブを変更せずに別のドライブのカレントディレクトリを変更する場合に有効です(サンプル5を参照)。

[Windows NT系] 「/D」オプションを使用すると以下のように1行で表現できます。

cd /D D:\MyData\Music
サンプル4
cd "C:\My Documents"

[Windows] 長い名前やスペースなどを含むディレクトリに移動する場合、引用符(" ")で括ってください。

[Windows NT系] [拡張構文] 拡張機能が有効になっている場合は引用符で括らなくても移動できます。

サンプル5 (プロンプト)
C:\My Documents>cd D:\MyData\Sheets
C:\My Documents>copy .\data.xls D:

Dドライブのカレントディレクトリを「MyData\Sheets」にして、「C:\My Documents\data.xls」を「D:\MyData\Sheets」ディレクトリにコピーします。