如何在 PowerShell 中对带有尾随空格的文件夹使用 Set-Location?
How to use Set-Location on a folder with trailing spaces in PowerShell?
我已经安装了一个 linux 共享文件夹。在该文件夹中,有一个我需要访问的子文件夹 . \
(点 space)。在命令提示符下,我可以使用短名称的 8dot3 符号访问它,但我需要使用 PowerShell 访问它。
Set-Location
和 cd
将在文件夹名称尾随 space 的路径上抛出错误(路径不存在)。
Windows 仍然没有对尾随 space 的文件夹名称提供最好的支持。您可以使用符号 links 的解决方法。使用提升的 Windows 命令提示符的 mklink
命令为名称中包含尾随 space 的文件夹创建一个符号 link(在 PS 中不可用)因为它是命令而不是工具)并将路径定义为 UNC 路径:
mklink /D C:\MyLink "\?\C:\path\to\folder\. "
之后你可以做:
cd C:\MyLink
或:
Set-Location -LiteralPath C:\MyLink
在 PowerShell 中从名称中有尾随 space 的目录开始工作。
您可以在我的回答 here.
中阅读更多关于文件夹名称包含尾随 space 的操作的信息
我已经安装了一个 linux 共享文件夹。在该文件夹中,有一个我需要访问的子文件夹 . \
(点 space)。在命令提示符下,我可以使用短名称的 8dot3 符号访问它,但我需要使用 PowerShell 访问它。
Set-Location
和 cd
将在文件夹名称尾随 space 的路径上抛出错误(路径不存在)。
Windows 仍然没有对尾随 space 的文件夹名称提供最好的支持。您可以使用符号 links 的解决方法。使用提升的 Windows 命令提示符的 mklink
命令为名称中包含尾随 space 的文件夹创建一个符号 link(在 PS 中不可用)因为它是命令而不是工具)并将路径定义为 UNC 路径:
mklink /D C:\MyLink "\?\C:\path\to\folder\. "
之后你可以做:
cd C:\MyLink
或:
Set-Location -LiteralPath C:\MyLink
在 PowerShell 中从名称中有尾随 space 的目录开始工作。
您可以在我的回答 here.
中阅读更多关于文件夹名称包含尾随 space 的操作的信息