program_growth_labの日記

このブログは Python 初心者が AI 相棒と一緒に成長していくログです

【コマンド】「cd D:\ してるのにドライブが変わらない?PowerShellとコマンドプロンプトのちがいメモ」― cmdでドライブを変えるのは cd じゃなくて D: だった話 ―

こんにちは。いーかです。

 

今日のテーマは、Windowsで開発してるとちょいちょいあれっとする小ネタです。

PowerShellだと
cd D:\AI\Tool
って打てばそのまま Dドライブに移動してくれるのに、
コマンドプロンプト(cmd)だとドライブが変わらない…😇

これ、わたしもしばらく
「なんで???」ってなっていたので、
ちゃんとメモとして残しておくことにしました。


1. 結論:cmdでドライブを変えるには cd じゃなくて D: だった

先に結論だけ書くと、こうです👇

  • ドライブだけ変えたいとき(cmd):

 
D:
  • ドライブ+フォルダを一気に変えたいとき(cmd):

 
cd /d D:\AI\Tool

PowerShell
→ cd D:\AI\Tool でOK

コマンドプロンプト(cmd)
→ D: でドライブ変更、
cd /d パス でドライブ+ディレクトリ変更

この違いを知らないと、
**「あれ、cdしてるのにCドライブのままなんだけど…?」**ってモヤモヤします。


2. なんで cd D:\ じゃダメなの?(cmdのクセ)

cmdには、ちょっと独特なルールがあります。

● cmdは「ドライブごとにカレントディレクトリを覚えてる」

ざっくりいうと、こういうイメージです:

  • Cドライブには C用の「今いる場所」情報

  • Dドライブには D用の「今いる場所」情報

  • Eドライブにも E用の「今いる場所」情報
    …という感じで、ドライブごとにカレントディレクトリを覚える仕様になってます。

なので、

 
C:\Users\iika> cd D:\AI\Tool

と打つとどうなるかというと、

  • 「Dドライブの“カレントディレクトリ情報”」だけが更新される

  • でも「いま自分がいるドライブ」は C のまま

つまり、内部的なメモは変わるけど、
自分が立っている場所(ドライブ)は変わらない
という状態になります。

だからプロンプトはずっと:

 
C:\Users\iika>

のまま。

「え、じゃあどうすればDドライブに移動したことになるの?」
というと、そこで出てくるのがさっきの D: です。


3. cmdでの正しい(?)ドライブ移動の書き方

✅ ドライブだけ変えたい

 
C:\Users\iika> D: D:\>

これで、「いまいるドライブ」そのものが D に切り替わります。

✅ ドライブ+パスを一気に変えたい

 
C:\Users\iika> cd /d D:\AI\Tool
D:\AI\Tool>
  • /d オプションを付けると
    👉 ドライブの変更+ディレクトリ移動 を同時にやってくれます

PowerShellでやっていた、

 
cd D:\AI\Tool

に一番近い動きが、
cmdではこの cd /d ですね。


4. 実際どう使い分ける?

わたしの場合は、こんな感じで使い分ける予定です。

  • すでにDドライブ側に「よく使う場所」が決まってるとき
    → まず D: でドライブを移動してから
    普通に cd work みたいに移動していく

  • Cドライブから一発で D:\AI\Tool に飛びたいとき
    → cd /d D:\AI\Tool

PowerShellに慣れてると、
**「すべて cd パス でなんとかなる世界」**に脳が最適化されてるので、
cmdに来ると一瞬戸惑います。

でも、

cmd
→ ドライブ切り替えは D:
 ドライブ+パスなら cd /d

これさえ覚えておけば、
あとはそんなに迷子にならなさそうです。


5. 今日のひとこと(成長ログ)

「なんで動かないの?」と感じた瞬間は、
 新しい“OSのクセ”を1つ理解するチャンス。

PowerShellとcmd、
見た目は似ているけど、
中身のルールは思った以上に違います。

この小さな違いに気づいて、
ちゃんと「メモして人に渡せる形」にできたのは、
自分の中の 「開発者OS」 がまた一段階アップした感じがしました。