如果路径包含 [,则 powershell 无法更改目录,而 dos 命令可以

powershell cannot change directory if path contains [ whereas dos command can

我不明白为什么我不能在 PowerShell 中进入带有 [] 的文件夹,例如

cd c:\test\[demo] 

而我是在 PowerShell 中使用

创建的
md [demo]

我实际上可以 cd 使用 DOS 命令。

如果我想从 PowerShell 在此文件夹中导航,我该怎么办?

PowerShell 中的

cdSet-Location which receives a -Path by default if no option is specified. Almost all PowerShell commands that deal with files like Get-ChildItem, Get-Acl... use the FileSystem Provider 的别名,并且具有 -Path 作为通配符模式,其中 [] 具有特殊含义。你需要像这样转义那些特殊字符

 cd '`[demo`]'

但是接收通配符的 cmdlet 也有 -LiteralPath,这是正确的做法

cd -LiteralPath [demo] # Or
cd -L [demo]