系统学习 Windows 学习路径:从 CMD 到 PowerShell、系统网络,再到 WSL 与 Server

cd

切换当前目录,并区分当前盘与其它盘各自的当前目录。

补充说明

cd(同 chdir)显示或切换 CMD 的当前工作目录。只输入 cd 会打印当前路径;cd .. 回到上级;cd \ 回到当前盘根目录;cd /d D:\path 在切目录的同时切换盘符。每个盘符在 CMD 中各有独立的当前目录,cd D:\data 只修改 D 盘的当前目录,命令提示符仍停留在原盘。

边界:cd 改的是当前 CMD 进程的工作目录,不会影响父进程,也不会持久化到新开的窗口。CMD 不能把 UNC 路径 \\server\share 当作当前目录,直接 cd 会报错;需要先用 pushd 映射临时盘符,退出时 popd。相对路径按当前目录解析,cd \Windows 是当前盘的根,不是“任意盘的 Windows”。

Windows 10/11 与 Server 版本行为一致;命令扩展默认开启时,路径中的空格不必加引号(官方说明),但脚本里仍建议加引号以免歧义。PowerShell 中 cd 是 Set-Location 的别名,可直接进入 UNC 和注册表路径,也没有 /d 开关;跨盘切换不需要额外参数。

常用示例

# 1. 确认当前目录,脚本里也可用 echo %CD%
C:\> cd

# 2. 切到另一块盘上的项目目录,必须带 /d
C:\> cd /d D:\Projects\app

# 3. 返回上一级,或直接回到当前盘根目录
C:\> cd ..
C:\> cd \

# 4. 带空格的路径用引号包住
C:\> cd "C:\Program Files (x86)\Common Files"

# 5. 进入 UNC 共享:pushd 会临时映射一个盘符,popd 断开
C:\> pushd \\fileserver\share\build
C:\> popd

# 6. 只输入盘符不会切换盘,只显示该盘当前的目录
C:\> cd D:

易错点与排错

相关命令

参考链接

读完自测

合上页面,先回答,再展开对照。

  1. 执行 cd D:\data 后,当前盘符和当前目录分别是什么?
  2. CMD 中如何进入 \\server\share\build?为什么不直接 cd?
  3. 在批处理里 cd 到别的目录,会让调用它的窗口也切过去吗?
答案
  1. 仍在原来的盘(通常是 C:),只是把 D 盘的当前目录设为 D:\data;要真正切过去需 cd /d。
  2. 用 pushd \\server\share\build,它会临时映射盘符;CMD 不支持 UNC 作为当前目录。
  3. 不会,批处理是子进程;它的 cd 只影响自己,除非由调用方切换。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令