Удалить символическую ссылку Windows

Обновлено: 02.07.2024

но ничего не работает. Последний хочет удалить рекурсию.

Кто-нибудь может мне помочь?

rmdir "C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Network Shortcuts\Test2" также хочет удалить рекурсию :(

Вы пытаетесь удалить файлы внутри целевого каталога (используя mklink /d) или просто ссылку на каталог (rmdir)?

Я создал тестовую символическую ссылку в "C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Network Shortcuts\Test2". Папка test2 сохранена на моем рабочем столе и содержит несколько тестовых файлов. Я хочу удалить только символическую ссылку "C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Network Shortcuts\Test2", а не папку на рабочем столе.

2 ответа 2

Чтобы правильно удалить символические ссылки, используйте

Вы можете просто удалить символическую ссылку в проводнике Windows. Таким образом, вам даже не нужно беспокоиться об использовании PowerShell.

ОДНАКО:

Если вы хотите удалить ссылку с помощью powershell, НЕ используйте

Вместо этого выберите указанную папку следующим образом:


PS H:\> cmd /c rmdir "C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Network Shortcuts\Test2" cmd : Zugriff verweigert In Zeile:1 Zeichen:1 + cmd /c rmdir " C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Netw.+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (Zugriff verweigert:String) [] , RemoteException + FullyQualifiedErrorId : NativeCommandError У меня есть права администратора.

cmd mklink /d "C:\Users\MIKROEG\AppData\Roaming\Microsoft\Windows\Network Shortcuts\Test2" не работает.

Символическая ссылка на каталог, обычно создаваемая с помощью mklink /D mysymlink C:\myfiles\somefile в командной строке, может быть удалена так же, как каталог с помощью

(Это эквивалентно длинной форме команды rmdir . На самом деле вы пробовали rmdir, но это не удалось из-за вашего пути без кавычек: cmd /s rmdir C:\Users\MIKROEG\AppData\Roaming\Microsoft \Windows\Сетевые ярлыки\Test2 .)

Вы можете продемонстрировать это, сделав резервную копию каталога в проводнике и используя команду rd для символической ссылки каталога. Вы увидите, что символическая ссылка удалена, а исходный каталог и его содержимое все еще присутствуют.

Предупреждение о других способах: символическую ссылку каталога нельзя удалить, как файл, в командной строке с помощью del . Это приведет к удалению файлов в каталоге!

Я создал символическую ссылку с помощью mklink . Теперь мне нужно изменить его, но я не могу понять, как его удалить, чтобы правильно создать заново.

11 ответов 11

Будьте очень осторожны.

Если у вас есть символическая ссылка, которая является каталогом (созданным с помощью mklink /d ), то использование del удалит все файлы в целевом каталоге (каталог, на который указывает ссылка), а не только ссылку.< /p>

РЕШЕНИЕ: с другой стороны, rmdir удалит только ссылку на каталог, а не то, на что указывает ссылка.

Если вы сделали это случайно (удалив все содержимое целевой папки), это важный совет.

Этот ответ не совсем точен. Del удаляет файлы, а не папки. Поэтому вы не должны использовать del для удаления ссылки.

Я не понимаю, в какой момент разработчики сочли логичным удалить файлы за ссылкой при удалении ссылки. После 5-го или 6-го пива? Или, может быть, после грибов.

Чтобы удалить символические ссылки каталога, созданные с помощью mklink /d, безопасно удалить символическую ссылку в проводнике Windows.

Это сработало и для меня. я удалил ссылку, а не исходную папку, на которую была ссылка. возможно, в этом загвоздка.

это работает, но я пытался переместить родительскую папку, поэтому будьте осторожны, символическая ссылка по-прежнему будет удерживать блокировку корзины. Использование SHIFT + DEL полезно для обхода корзины.

Для символической ссылки на файл используйте del . Для символической ссылки на каталог, созданной с помощью mklink /d , используйте rmdir .


В Windows 7 SP1 (64-разрядная версия) символическая ссылка, указывающая либо на файл (например, созданный с помощью MKLINK), либо на каталог (MKLINK/D), может быть удалена в проводнике Windows с помощью обычного графического интерфейса Windows. удалить», без удаления цели. Даже СОЕДИНЕНИЕ (например, созданное с помощью команды MKLINK /J) при удалении в проводнике не удалит ни целевой каталог, ни его содержимое. Если он не пуст, целевой каталог нельзя даже удалить с помощью команды DEL junction в командной строке. Проверено сегодня.


Этот блог путает значение слова "Цель", которое является фактическим каталогом, на который указывает ссылка, и который люди обычно стараются не удалять при удалении ссылки.

rmdir — это внутренняя команда cmd.exe, поэтому очевидно, что для его вызова из других оболочек вам понадобится cmd /c или cmd /k . rmdir в PowerShell — это просто псевдоним Remove-Item

Чтобы добавить путаницы, del также является псевдонимом Remove-Item в PowerShell. Таким образом, в то время как del в cmd рекурсивно удаляет файлы, del в PowerShell удаляет только ссылку.

Есть еще одно решение, проверенное мной и безопасное в использовании. просто добавьте в настоящую папку _ (пример: foo станет foo_), затем просто удалите свою символическую ссылку, затем удалите _ из вашей истинной папки.

Предупреждение: я не думаю, что это МОЖЕТ не работать на Win10, поскольку оно исправляет ярлыки при переименовании. (По крайней мере, классические ярлыки). Не тестировалось.

Я сделал это на всякий случай. После того, как я переименовал целевую папку, при попытке получить к ней доступ символическая ссылка не удалась, поэтому я мог удалить ее, не беспокоясь.

mklink нельзя использовать для удаления символических ссылок. Чтобы удалить символическую ссылку, просто удалите их, как если бы вы удаляли обычный файл. Например, чтобы удалить символическую ссылку foo, созданную выше, введите следующую команду:

Если ссылка является жесткой ссылкой на каталог:

Или, ЕСЛИ ссылка указывает на файл (а не на каталог)


См. ответ eddyq ниже, потому что использование del для ссылки на каталог не будет работать, и вместо этого будет предпринята попытка удалить содержимое папки.

В моем случае (Windows 10) после создания символической ссылки с помощью

и удаление с помощью удаления с помощью проводника или клавиши удаления на клавиатуре также удаляет исходный каталог.

Что вам нужно сделать, так это удалить ссылку через командную строку.

Самый простой способ — переместить папку (на которую указывает символическая ссылка) в другое место (в родительскую папку), а затем удалить символическую ссылку. Никакие файлы не пострадают!

Я установил это расширение Link Shell. При этом у вас есть 2 метода.

Создайте его с помощью контекстного меню, как показано, и удалите его через проводник.

Протестируйте с помощью папки, например C:\Windows\Logs, как показано, или аналогичной. Я просто создаю каталог со всеми возможными местоположениями временных файлов для удаления, и мне нужна центральная папка, где я мог бы отслеживать их размер с помощью символических ссылок.

Обратите внимание: белый экран — это просто UAC.

На созданной символической ссылке (в шагах, показанных выше) щелкните правой кнопкой мыши на этот раз и выберите свойства, а затем перейдите на вкладку "Свойства ссылки".

Примечание. Это расширение оболочки добавило эту вкладку.

Прежде чем я продолжу, еще много информации можно найти здесь, а также на главной странице версии для x64 и 32-бит.

Итак, чтобы продолжить, здесь вы можете добавить что угодно в целевое поле, если оно отличается от исходной цели.

цель до

Вот пример с целью C:\Windows\Logs

Вот после с целью как C:\Windows\Logs_ , обратите внимание на лишний _ в конце.

цель после

Вы можете проверить это еще раз, выполнив те же 1-3 шага, описанные выше, чтобы убедиться, что все застряло. На этот раз вы получите сообщение об ошибке при нажатии на вкладку "Свойства ссылки", поэтому ссылка теперь не работает.

Теперь безопасно (r) удалить символическую ссылку, чем метод 1 ИМХО.

Но! Здесь работают оба метода, так что это полностью зависит от выбора пользователя. Мне нравится метод свойств, на который я с радостью наткнулся, поэтому вы на 100% уверены, что ссылка не работает, выполнив шаг 4 выше.

Вот изображение, на котором я создаю символическую ссылку, перетаскивая правой кнопкой мыши папку в другую и выбирая опцию создания символической ссылки в подменю.

Чтобы удалить, просто выполните шаги 1–5, описанные выше для метода 2, или следуйте способу 1.

Как создать и удалить символическую ссылку с помощью метода свойств

Обратите внимание: белый экран — это просто UAC.

Символическая ссылка, также известная как символическая ссылка, представляет собой файл, указывающий на другой файл. Файл указывает на может быть в том же или другом каталоге. Это похоже на ярлыки в ОС Windows.

В сегодняшней статье мы расскажем, как удалить символическую ссылку в Linux. Обратите внимание, что удаление символической ссылки не влияет на файл, на который она указывает.

Перед удалением файла вы можете проверить, является ли он символической ссылкой, с помощью команды ls -l. Он также покажет вам файл или каталог, на который он указывает.

Л в разрешениях (lrwxrwxrwx) подтверждает, что это символическая ссылка.


Удалить символическую ссылку с помощью команды отмены связи

Команда unlink используется для удаления одного файла из файловой системы. Чтобы удалить символическую ссылку в Linux, введите команду unlink, затем имя символической ссылки и нажмите Enter:

Замените symbolic_link именем символической ссылки, которую вы хотите удалить. После этого вы можете использовать команду ls -l, чтобы убедиться, что символическая ссылка удалена.


Удалите символическую ссылку, указывающую на каталог, не используйте косую черту после имени каталога. Допустим, мы хотим удалить каталог символической ссылки с именем Docs, как показано на следующем снимке экрана:


Команда для удаления каталога символической ссылки будет следующей:


Удалить символическую ссылку с помощью команды rm

Команду rm также можно использовать для удаления символической ссылки. Для удаления символической ссылки в Linux введите команду rm, затем имя символической ссылки и нажмите Enter:

После этого вы можете использовать команду ls -l, чтобы убедиться, что символическая ссылка удалена.


Вы также можете использовать флаг -i с командой rm для запроса подтверждения.


Удаляя символическую ссылку, указывающую на каталог, не используйте косую черту после имени каталога. Допустим, мы хотим удалить каталог символической ссылки с именем Docs, как показано на следующем снимке экрана:


Команда для удаления каталога символической ссылки будет следующей:

После этого вы можете использовать команду ls -l, чтобы убедиться, что символическая ссылка удалена.

На этом все! В этом посте вы научились удалять символическую ссылку в ОС Linux с помощью команд unlink и rm. При удалении символической ссылки обязательно удаляйте только саму символическую ссылку, а не файл или каталог, на который она указывает.

Об авторе

Карим Буздар

Карим Буздар имеет степень инженера в области телекоммуникаций и несколько сертификатов системного администратора. Как ИТ-инженер и технический автор, он пишет для различных веб-сайтов. Он ведет блог на LinuxWays.


Крис Хоффман

< бр />

Крис Хоффман
Главный редактор

Крис Хоффман – главный редактор How-To Geek. Он писал о технологиях более десяти лет и два года был обозревателем PCWorld. Крис писал для The New York Times, давал интервью в качестве эксперта по технологиям на телевизионных станциях, таких как NBC 6 в Майами, и освещал свою работу в таких новостных агентствах, как BBC. С 2011 года Крис написал более 2000 статей, которые были прочитаны почти миллиард раз — и это только здесь, в How-To Geek. Подробнее.


Windows 10, 8, 7 и Vista поддерживают символические ссылки, также известные как символические ссылки, которые указывают на файл или папку в вашей системе. Их можно создать с помощью командной строки или стороннего инструмента Link Shell Extension.

Что такое символические ссылки?

Символические ссылки — это расширенные ярлыки. Создайте символическую ссылку на отдельный файл или папку, и эта ссылка будет выглядеть так же, как файл или папка для Windows, даже если это просто ссылка, указывающая на файл или папку.

Например, предположим, что у вас есть программа, которой нужны файлы в папке C:\Program. Вы действительно хотели бы сохранить этот каталог в D:\Stuff, но программа требует, чтобы ее файлы находились в C:\Program. Вы можете переместить исходный каталог из C:\Program в D:\Stuff, а затем создать символическую ссылку в C:\Program, указывающую на D:\Stuff. Когда вы перезапустите программу, она попытается получить доступ к своему каталогу C:\Program. Windows автоматически перенаправит его в D:\Stuff, и все будет работать так же, как если бы оно было в C:\Program.

Этот прием можно использовать для самых разных целей, включая синхронизацию любой папки с такими программами, как Dropbox, Google Drive и OneDrive.

Существует два типа символических ссылок: жесткие и мягкие. Мягкие символические ссылки работают аналогично стандартным ярлыкам. Когда вы открываете программную ссылку на папку, вы будете перенаправлены в папку, в которой хранятся файлы. Однако жесткая ссылка создает впечатление, что файл или папка действительно существуют в месте расположения символической ссылки, и ваши приложения ничего не знают.Это делает жесткие символические ссылки более полезными в большинстве ситуаций.

Обратите внимание, что Windows на самом деле не использует термины "жесткая ссылка" и "мягкая ссылка". Вместо этого используются термины «жесткая ссылка» и «символическая ссылка». В документации Windows «символическая ссылка» — это то же самое, что и «мягкая ссылка». Однако команда mklink может создавать как жесткие ссылки (известные как «жесткие ссылки» в Windows), так и программные ссылки (известные как «символические ссылки» в Windows).

Как создавать символические ссылки с помощью mklink

Вы можете создавать символические ссылки с помощью команды mklink в окне командной строки от имени администратора. Чтобы открыть его, найдите ярлык «Командная строка» в меню «Пуск», щелкните его правой кнопкой мыши и выберите «Запуск от имени администратора».

В Windows 10 Creators Update вы можете использовать обычное окно командной строки, не запуская его от имени администратора. Однако, чтобы сделать это без окна командной строки администратора, необходимо сначала включить режим разработчика в меню «Настройки» > «Обновление и безопасность» > «Для разработчиков».


Без каких-либо дополнительных параметров mklink создает символическую ссылку на файл. Приведенная ниже команда создает символическую или «мягкую» ссылку в Link, указывающую на файл Target :

Используйте /D, если вы хотите создать программную ссылку, указывающую на каталог. вот так:

Используйте /H, если хотите создать жесткую ссылку, указывающую на файл:

Используйте /J, чтобы создать жесткую ссылку, указывающую на каталог, также известную как соединение каталогов:


Например, если вы хотите создать соединение каталогов (жесткую ссылку на папку) в C:\LinkToFolder, указывающее на C:\Users\Name\OriginalFolder, вы должны выполнить следующую команду:< /p>

Пути с пробелами нужно заключать в кавычки. Например, если вместо этого папки называются C:\Link To Folder и C:\Users\Name\Original Folder, вместо этого вы должны использовать следующую команду:


Если вы видите сообщение "У вас недостаточно прав для выполнения этой операции", перед выполнением команды необходимо запустить командную строку от имени администратора.

Как создавать символические ссылки с помощью графического инструмента

Если вы хотите сделать это с помощью графического инструмента, загрузите расширение Link Shell. Обязательно загрузите соответствующий обязательный пакет перед самим инструментом — ссылки на оба находятся на странице загрузки инструмента.

После установки найдите файл или папку, на которую хотите создать ссылку, щелкните ее правой кнопкой мыши и выберите в меню "Выбрать источник ссылки".


Затем вы можете щелкнуть правой кнопкой мыши внутри другой папки, указать на меню «Перетащить как» и выбрать «Жесткая ссылка», чтобы создать жесткую ссылку на файл, «Соединение», чтобы создать жесткую ссылку на каталог, или « Символическая ссылка», чтобы создать программную ссылку на файл или каталог.


Как удалить символические ссылки

Чтобы избавиться от символической ссылки, вы можете просто удалить ее, как и любой другой файл или каталог. Просто будьте осторожны, чтобы удалить саму ссылку, а не файл или каталог, на который она указывает.


  • › Что такое «Режим разработчика» в Windows 10?
  • › Как изменить местоположение папки с фотографиями Windows iCloud
  • › Как включить новую защиту папок OneDrive от Microsoft в Windows
  • › 4 способа сделать резервную копию сохраненных игр на ПК
  • › Как просмотреть список символических ссылок в Windows 11
  • › Синхронизируйте любую папку с Dropbox с помощью SyncToy
  • › Что делать, если Windows показывает две разные буквы для одного и того же диска
  • ›5 шрифтов, которые следует прекратить использовать (и лучшие альтернативы)

Читайте также: