命令提示符无法更改目录到另一个驱动器

522

我正在尝试编译一些Java代码(目前正在学习Java),为此需要更改命令提示符的目录。

C:\...\Admin> cd D:\Docs\Java
C:\...\Admin> cd
C:\...\Admin

它并不改变目录。我再试一次使用引号:

C:\...\Admin> cd "D:\Docs\Java"
C:\...\Admin>

再次运行也没有改变目录。我做错了什么吗?

14个回答

949

你可以按照@nasreddine的回答,或者你可以使用/d

cd /d d:\Docs\Java

想要了解更多关于cd命令的帮助,请使用:

C:\Documents and Settings\kenny>help cd

显示当前目录的名称或更改当前目录。

CHDIR [/D] [驱动器:][路径] CHDIR [..] CD [/D] [驱动器:][路径] CD [..]

.. 表示您想要切换到父目录。

键入CD驱动器:以在指定驱动器中显示当前目录。 不带参数键入CD以显示当前驱动器和目录。

使用/D开关可以在更改驱动器的同时更改当前目录。

如果启用命令扩展,CHDIR 的行为如下:

将当前目录字符串转换为与磁盘上的名称相同的大小写形式。 因此,如果磁盘上的情况是 C:\Temp,那么 CD C:\TEMP 实际上会将当前目录设置为 C:\Temp。

CHDIR 命令不将空格视为分隔符,因此可以在不使用引号包围名称的情况下 CD 到包含空格的子目录名称。例如:

cd \winnt\profiles\username\programs\start menu

与以下内容相同:

cd "\winnt\profiles\username\programs\start menu"

如果禁用扩展名,则必须键入上述内容。


2
根据我的经验,CD 没有更改驱动器字母的情况。 - kenny
@kenny 的确,它从来没有切换过驱动器字母。 - simontemplar
@kenny,我希望当你尝试切换到另一个驱动器上的目录时,它不仅仅是无所事事地做任何事情,而是会给出一个错误消息,提示“错误-您正在尝试访问的文件位于另一个驱动器上。请指定-d...” - committedandroider
1
@committedandroider 是的,这肯定是一个缺陷,就这么做吧 ;) - kenny
1
这在 Windows 11 上对我不起作用。 - Lost Crotchet
显示剩余3条评论

202

你要切换的目录在另一个驱动器上,你需要使用以下命令切换到该驱动器:

C:\...\Admin> d:

那么你可以cd进入你想要的目录。

C:\...\Admin> d:
D:\>cd "Docs\Java"

D:\Docs\Java>

2
@Prageethgodage:假设您在C:\my Folder上,并且有文件位于另一个(网络)驱动器上的文件夹中,即Z:。执行cd z:\very\long\path\you\dontwant\to\write\each\time。您仍然在C:\my Folder上。然后,您可以只需键入dir z:(将列出您非常长的路径上的文件)或copy z:*.jpg(注意:不是z:\*.jpg!),这将复制来自非常长的路径的文件。简单的z:将切换到您的Z:驱动器,其中您位于非常长的路径中。如果您经常使用命令提示符,则非常方便。 - Stephan
为什么不能直接切换到那个目录?这些开发者到底在想什么?! - mohammadsdtmnd

60

使用驱动器字母 d 来切换到 D 驱动器,例如:

  C:\> d:

更换驱动器时,只需键入驱动器号码,例如d:(不要使用反斜杠,例如d:\,这样是不起作用的)。

当在同一驱动器内切换目录时,只需使用cd


3
这是在Windows中更改驱动器的唯一正确解决方案。谢谢! - gaya

41

简短回答

C:\...\AdminD:\Docs\Java 盘的正确方式是使用以下命令:

cd /d D:\Docs\Java
cd /d d:\Docs\Java

更多细节

假设你在你的 D:\ 盘中某个随机位置,想要回到盘符的根目录,你可以使用以下命令:

cd d:\

如果你在 D:\ 盘的某个随机位置,想要进入该盘下的一个特定文件夹,你可以使用以下命令:

cd d:\Docs\Java

如果您在另一个驱动器上,且想要跳转到您的 D:\ 驱动器的根目录,您可以使用以下命令:

如果您在另外一個磁盘槽,需要前往您的 D:\ 磁盘槽根目錄,則可以使用以下命令:

cd /d d:\

如果您在不同的驱动器上,并且想要进入D:驱动器中的特定文件夹,可以使用以下命令:

如果你在别的驱动器,想去到D:驱动器里的某一个特定的文件夹,你可以使用这个命令:

cd /d d:\Docs\Java

如果你在另一个驱动器上,并且想要进入你的D:驱动器的最后打开的文件夹,可以使用以下命令:

如果您在不同的驱动器上,并且希望转到您D:驱动器中的最后一个打开的文件夹,则可以使用此命令:

cd /d d:

作为 cd /d d: 的简写,您也可以使用以下命令:

d:

2
另外,如果您尝试切换到网络驱动器,我的解决方法是从“解决方案资源管理器”中进入驱动器,并在地址栏中键入cmd。这将打开它。 - Artorias2718
由于某种原因,除了最后列出的简写方法之外,其他方法对我都没有起作用。 - 9Deuce
@Artorias2718 不一样的是,但是如果你在文件夹内使用“shift+R_click”键,将会有一个选项可以打开终端。我可以使用Powershell和WLS,如果您需要cmd,则可以在Powershell提示符中输入“cmd”并按回车键。 - dmb

39

你应该在路径前使用 /d,如下所示:

cd /d e:\

谢谢,这个方法有效。/d 是什么意思? - rishi jain
谢谢,这个有用。/d 是什么意思? - undefined

16

要在Windows中切换到D驱动器,请使用以下方法:

C:\Users\Balaji>d:

要切换到E盘,请使用以下命令:

C:\Users\Balaji>e:

其他驱动器也将适用相同规则。


9
如果你想从当前工作目录切换到另一个目录,那么在命令提示符中需要键入要切换到的驱动器名称,后跟":"符号。例如:假设你想切换到D驱动器而你当前在C驱动器上,则输入D:并按Enter键。
另一方面,如果你想在同一工作目录中更改目录,则使用cd(change directory)命令,后跟目录名称。例如:假设你想要更改到新文件夹,然后键入:cd "new folder"并按Enter键。
CMD使用提示: Windows命令行区分大小写。 当使用带有空格的文件或目录时,请将其用引号括起来。例如:"My Documents"。 当在命令行中删除文件或目录时,它不会移动到回收站。 如果您需要任何命令的帮助,请在命令后输入/?。例如,dir /?将提供dir命令可用的选项。

6

您可以使用以下命令更改目录,例如:如果您当前的工作目录为C:\驱动器,而您想要进入D:\驱动器,则请输入以下命令:


cd /d D:\

现在您的当前工作目录是D:\驱动器,因此您想进入Docs下的Java目录,请键入以下命令:

cd Docs\Java

注:d 代表驱动器


4
在Windows上,cd命令对于Linux系统的用户来说并不直观。如果您期望cd能够进入另一个目录,无论它是在当前驱动器还是另一个驱动器中,那么您可以为cd创建一个别名。以下是如何在Cmder中执行此操作的步骤:
  • 进入$CMDER_ROOT/config并打开文件user_aliases.cmd
  • 将以下内容添加到文件末尾:
cd=cd /d $*

重新启动Cmder,然后您就可以转到任何目录了。这是一个小技巧,但非常有效并可以节省您的时间。


4

一种更简便的方法是使用PowerShell,它不需要任何额外的标志:

W:\> cd C:\path\on\different\disk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接