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:\>
Kesalahan terkait dengan fakta bahwa rm-force mencoba menghapus item di dalam mana pun tautan menunjuk. Bagaimana saya bisa menghapus hal ini menggunakan baris perintah? Di mana saya dapat melaporkan bug powershell / shell? Sepertinya PowerShell tidak ada di MS Connect.
powershell
Ian Kelling
sumber
sumber
mklink
belum jadi masuk akal kalau tidak tahu bagaimana menangani yang rusak. Saya akan menyebutnya "permintaan fitur" daripada "bug". Saya akan membayangkan itu sudah ada di peta jalan. Berikut ini tautan untuk umpan balik: connect.microsoft.com/PowerShellGunakan perintah mountvol / d
Daftarkan GUID:
PS C:> Pasangvol
kemudian
PS C:> mountvol \? \ Volume {2eca078d-5cbc-43d3-aff8-7e8511f60d0e} \ / d
mengganti GUID yang relevan di atas
sumber
Saya menggunakan .net dari PowerShell untuk melakukan ini
Di mana $ Path sama dengan jalur symlink Anda. rmdir tidak memberikan hasil yang konsisten dan hampir selalu akan mengembalikan kesalahan saat dijalankan dari PowerShell, terlepas dari apakah itu berhasil atau tidak.
sumber