Ответы:
Будь очень осторожен.
Если у вас есть символическая ссылка, которая является каталогом (сделанным с помощью mklink /d
), то при использовании del
будет удален все файлы в целевом каталоге (каталоге, на который указывает ссылка), а не только ссылка.
РЕШЕНИЕ: rmdir
с другой стороны, удаляется только ссылка на каталог, а не то, на что указывает ссылка.
Del
удаляет файлы, а не папки. Поэтому вы не будете использовать, del
чтобы удалить ссылку.
rmdir
в PowerShell. Оберните это cmd
сначала. Смотрите мой ответ ниже ...
Для удаления символьных ссылок каталога, созданных с mklink /d
его помощью, можно просто удалить символическую ссылку в проводнике.
Для символической ссылки на файл используйте del
. Для символической ссылки на каталог, созданный с помощью mklink /d
, используйте rmdir
.
rmdir
ссылались на Powershell!
В Powershell не используйте rmdir
! Используйте cmd /c rmdir .\Target
вместо этого. Я проверил это сам и подтвердил это здесь: http://kristofmattei.be/2012/12/15/powershell-remove-item-and-symbolic-links/
rmdir
является внутренней командой cmd.exe , поэтому, очевидно, вызывать ее из других оболочек, которые вам нужны cmd /c
или cmd /k
. rmdir
в PowerShell это просто псевдоним дляRemove-Item
Есть еще одно решение, проверенное мной и безопасное для использования. просто добавьте в реальную папку _ (пример: foo становитесь foo_), затем просто удалите ссылку Symbolik, затем удалите _ из вашей настоящей папки.
mklink нельзя использовать для удаления символических ссылок. Чтобы удалить символическую ссылку, просто удалите их, как будто вы удаляете обычный файл. Например, чтобы удалить созданную выше символическую ссылку foo, введите следующую команду:
Если ссылка является жесткой ссылкой на каталог:
C:\test>rmdir foo
или, если ссылка указывает на файл (в отличие от каталога)
C:\test>del foo
del /S
или Explorer.
В моем случае (Windows 10) после создания символической ссылки используется
MKLINK /D "C:\Users\username\Dropbox\MyProject" "C:\SourceProject"
и удаление с помощью удаления с помощью проводника или клавиши удаления с клавиатуры также удаляет исходный каталог .
Что вы должны сделать, это удалить ссылку через командную строку.
C:\Users\username\Dropbox>rd /s MyProject
Для получения дополнительной информации о команде rd: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/rd
Я установил это расширение Link Shell . При этом у вас есть 2 метода.
Создайте его, используя контекстное меню, как показано, и удалите через проводник.
Протестируйте с помощью папки, C:\Windows\Logs
как показано на рисунке или аналогичной. Я просто создаю каталог всех возможных местоположений временных файлов для удаления, и я хотел центральную папку, где я мог бы контролировать размер их через символические ссылки.
Обратите внимание: белый экран - это просто UAC .
Самый безопасный способ без документов здесь AFAIK .
На созданной символической ссылке ( в шагах, показанных выше ) щелкните правой кнопкой мыши на этот раз и выберите Свойства, затем перейдите на Link Propertiesвкладку.
Примечание. Это расширение оболочки добавило эту вкладку.
Прежде чем я продолжу, здесь можно найти много дополнительной информации , также на домашней странице представлены версии для x64 и 32 бит .
Итак, чтобы продолжить, здесь вы можете добавить что угодно к целевому полю, если оно отличается от первоначальной цели.
Вот после с целью C:\Windows\Logs_
, обратите внимание на дополнительное _
в конце.
Нажмите OK
Вы можете проверить это еще раз, выполнив те же 1-3 шага выше, чтобы убедиться, что он застрял, на этот раз вы получите сообщение об ошибке при нажатии на Link Propertiesвкладку, поэтому ссылка теперь не работает.
Теперь безопасно (r) удалить символическую ссылку, чем метод 1 ИМХО.
Но! Оба метода работают здесь, так что это полностью зависит от выбора пользователя. Мне нравится метод свойств, на который я случайно наткнулся, так что вы на 100% уверены, что ссылка разорвана с помощью шага 4 выше.
Вот мой рисунок, когда я создаю символическую ссылку правой кнопкой мыши, перетаскивая папку в другую и выбирая параметр для создания символической ссылки в подменю.
Чтобы удалить, просто выполните шаги 1-5 выше метода 2 или выполните метод 1.
Как создать и удалить символическую ссылку, используя метод свойств
Обратите внимание: белый экран - это просто UAC .