PS C:\> cmd /c mklink /d testlink non-existent-dir
symbolic link created for testlink <<===>> non-existent-dir
PS C:\> rm .\testlink
Remove-Item : C:\testlink is a NTFS junction point. Use the Force parameter to delete or modify.
At line:1 char:3
+ rm <<<< .\testlink
+ CategoryInfo : WriteError: (C:\testlink:DirectoryInfo) [Remove-Item], IOException
+ FullyQualifiedErrorId : DirectoryNotEmpty,Microsoft.PowerShell.Commands.RemoveItemCommand
PS C:\> rm -force .\testlink
Remove-Item : Could not find a part of the path 'C:\testlink'.
At line:1 char:3
+ rm <<<< -force .\testlink
+ CategoryInfo : WriteError: (C:\testlink:String) [Remove-Item], DirectoryNotFoundException
+ FullyQualifiedErrorId : RemoveItemIOError,Microsoft.PowerShell.Commands.RemoveItemCommand
PS C:\>
Der Fehler hängt mit der Tatsache zusammen, dass rm -force versucht, Elemente darin zu entfernen, wo immer der Link zeigt. Wie kann ich dieses Ding über die Kommandozeile entfernen? Wo kann ich Powershell- / Shell-Fehler melden? Es scheint, dass Powershell nicht auf MS Connect ist.
powershell
Ian Kelling
quelle
quelle
mklink
nicht, also macht es Sinn, dass es nicht weiß, wie man mit kaputten umgeht. Ich würde es eher eine "Feature-Anfrage" als einen "Bug" nennen. Ich würde mir vorstellen, dass es bereits auf der Roadmap steht. Hier ist jedoch ein Link für Feedback: connect.microsoft.com/PowerShellVerwenden Sie den Befehl mountvol / d
Listen Sie die GUID auf:
PS C:> Mountvol
dann
PS C:> mountvol \? \ Volume {2eca078d-5cbc-43d3-aff8-7e8511f60d0e} \ / d
Ersetzen der entsprechenden GUID oben
quelle
Ich benutze dazu .net von Powershell
Wobei $ Path gleich dem Pfad Ihres Symlinks ist. rmdir liefert kein konsistentes Ergebnis und gibt fast immer einen Fehler zurück, wenn es von Powershell ausgeführt wird, unabhängig davon, ob es erfolgreich war oder nicht.
quelle