Windows 删除powershell中的子目录,包括符号链接

Windows 删除powershell中的子目录,包括符号链接,windows,powershell,scripting,Windows,Powershell,Scripting,当前遇到问题,我正在执行以下操作: Get-ChildItem $PATH -Recurse -ErrorAction SilentlyContinue | Where-Object {($_.Attributes -notmatch '\"Directory\"') -and ($_.LastWriteTime -lt (Get-Date).AddHours(-12))}| Remove-Item -Force -Recurse 现在,如果我没

当前遇到问题,我正在执行以下操作:

Get-ChildItem $PATH -Recurse -ErrorAction SilentlyContinue | 
  Where-Object {($_.Attributes -notmatch '\"Directory\"') -and  
              ($_.LastWriteTime -lt (Get-Date).AddHours(-12))}| 
    Remove-Item -Force -Recurse
现在,如果我没有符号链接就可以删除,但我有。我得到这个错误:

移除项:请求中指定的标记与重分析点中存在的标记不匹配 第1行字符:184 + ... ($\ LastWriteTime-lt(Get Date).AddHours(-12))}删除项-Force + ~~~~~~~~~~~~~~~~~~ +CategoryInfo:NotSpecified:(:)[Remove Item],Win32Exception +FullyQualifiedErrorId:System.ComponentModel.Win32异常,Microsoft.PowerShell.Commands.RemoveItemCommand

我无法将powershell升级到v6。这似乎与:


有人有解决办法吗

这个问题似乎在PS 6中得到了解决(参考:)

在PS 5.1中,可以使用以下方法解决此问题:

$(get-item $theSymlinkDir).Delete()
或者,正如Q注释中针对该特定Foreach对象循环所述:

|? LinkType -eq 'SymbolicLink'| % { $_.Delete() }

今天在PowerShell 7上测试,不幸的是问题仍然存在:PowerShell无法删除符号链接


我不得不通过一个提升的提示符删除目录,键入
cmd/c rmdir/s/q c:\Users\Your_User\u Name\Your_Folder\u Name

您可以使用
|单独运行一次?LinkType-eq'symbolicink'|%{$\.Delete()}
是的,这是我一直在寻找的东西。谢谢我要说的是,在PS 6中,他们选择忽略它。我在Windows10的用户配置文件下的ntfs连接点也有同样的问题。但是cmd是有效的。@js2010-你的意思是说它在PS6中没有被修复?我错了。删除dir符号链接在ps6中起作用。我正在处理的问题更奇怪。重新解析没有目标的点。