命令提示符驱动器切换不同于 PowerShell

命令提示符驱动器切换不同于 PowerShell

在命令提示符中,我可以使用以下(相当简单的)命令在C:\驱动器之间切换:D:\

D:

我还可以使用命令在同一驱动器中的不同目录之间切换cd。例如,如果我在驱动器的根目录中,我可以使用以下命令C:\转到:C:\Folder\

cd C:\Folder\

但是,如果我想从同一个根目录进入D:\Folder\,我必须使用两个命令。具体来说:

D:
cd D:\Folder\

当然,上述两个命令都可以简化,但需要以完整的扩展形式来说明我的观点。

我也可以反转命令的顺序,以实现相同的结果:

cd D:\Folder\
D:

cd D:\Folder\仅从驱动器打字C:\是行不通的,您还必须手动切换驱动器。

这让我推断命令提示符会同时存储所有驱动器的当前目录,这没有道理。为什么命令提示符会花时间在每个驱动器的所有当前目录中进行移动,这样做会让用户在驱动器之间导航变得更加困难?此外,如果cd D:\Folder在 PowerShell 中输入相同的命令( )(再次从C:\),则完全没有问题!

我不明白。为什么命令提示符有这种奇怪的驱动器切换系统,而 PowerShell 可以更明智地让用户毫无阻碍地前往他们想去的地方?

答案1

Cmd.exe 基于 command.com,其历史可以追溯到 DOS 时代。它需要遵守某些规则,而 powershell 则不需要。奇怪的是,许多批处理文件都是为处理甚至利用此语法而编写的。

简单地从 C:\ 驱动器输入 cd D:\Folder\ 不起作用

你 100% 正确,不,它不起作用,但是有一个命令行标志可以使这个命令起作用。

打字cd /?就会产生这种美丽。Use the /D switch to change current drive in addition to changing current directory for a drive.

因此cd /d D:\Folder\从 C:\ 驱动器可以工作。在游戏的这个阶段,powershell 是一种更好的前进方式(IMHO),但了解一些 cmd.exe 永远不会有坏处。

相关内容