批处理驱动器盘符为何未资本化



在批处理中,当我更改为不同的大写驱动器时,它会自动更正除fr之外的所有内容的大写。当我要更改的新驱动器与我当前所在的驱动器相同时,驱动器号除外

C:WindowsSystem32>cd /d a:eXaMpLe
a:Example>cd /d A:
A:>cd /d a:
A:>echo.%CD%&cd /d a:&echo.%CD%
A:
A:
A:>exit /b 0

那么,为什么驱动器号的大写行为是这样的呢???

我不知道这有什么关系,但这种行为是我以前注意到的。

我不知道答案,但我可以做一个有根据的猜测。

文件夹名称的大小写存储在卷的目录中,因此CD命令只在目录中使用大小写,忽略实际输入的内容。但我不认为卷号存储在卷的目录中,所以CD命令只是保留输入的驱动器号大小写。

我想驱动器号只存在于没有定义字幕的情况下
您只能看到cd<driveLetter>:pushdpopd命令的最后影响。

这些命令只会在新目录与以前不同时影响目录!

cd c:
cd c:windows  - Affects the directory and therefore the drive letter case
pushd C:windows - doesn't affect the current directory
cd ..
popd - Affects the directory and therefore the drive letter case

相关内容

  • 没有找到相关文章

最新更新