PowerShell删除连接

Mas*_*ata 6 powershell junction

从Windows 10开始,PowerShell终于能够本地创建连接和链接。

但是,Remove-Item函数似乎不知道该联结,而是尝试删除该目录以进行确认以及是否应递归删除其中的项目。

因此,问题是:是否可以使用PowerShell本机Cmdlet删除联结?(即不调用cmd)

Mat*_*att 6

有没有办法使用PowerShell删除联结?

当前,至少在PowerShell v5中,这被视为“已修复”。您可以使用-Force开关进行操作,否则将路径称为NTFS联结会出错。我至少使用固定的引号的原因是,使用开关仍将使有关目录中子项的消息显示出来。选择Y仍只会在我使用PSv5进行的测试中删除连接点。

Remove-Item "C:\temp\junction" -Force -Confirm:$False
Run Code Online (Sandbox Code Playgroud)

如果这对您不起作用或您没有v5,则可以使用.Net方法删除目录。这似乎也正常工作。

[io.directory]::Delete("C:\temp\junction")
Run Code Online (Sandbox Code Playgroud)