Переглянути список символічних посилань на системі?


55

Чи є спосіб переглянути список усіх символічних посилань, які є активними на машині Windows?

Відповіді:


92

Спробуйте виконати таку команду:

dir /AL /S C:\
  • /Aвідображає всі файли з певним атрибутом та Lвказує точки повторного розбору (символьні посилання та з'єднання каталогів)
  • /S робить команду рекурсивною
  • замініть C:\буквою диска, який ви хочете сканувати, або контуром, якщо ви не хочете сканувати весь диск

2
Чи є спосіб зробити так, щоб він не повторювався в символьні посилання / з'єднання, щоб він не застряг у нескінченному циклі?
BrainSlugs83

15

В PowerShell

Dir C:\ -Force -Recurse -ErrorAction 'silentlycontinue' | 
  Where { $_.Attributes -match "ReparsePoint"}
  • -Force включає приховані та системні файли
  • -Recurse отримує всі дочірні предмети
  • -ErrorAction 'silentlycontinue'пригнічує доступ до шляху XYZ відмовляється в помилках
  • Where { $_.Attributes -match "ReparsePoint"}перевіряє папки та файли, якщо це з'єднання

Пояснення атрибутів Mode :

  • d - Довідник
  • а - Архів
  • r - лише для читання
  • h - Прихований
  • s - Система
  • l - точка повторного аналізу, симпосилання тощо.

Дякую - це може бути справді потужним для сценаріїв - чи є властивість, яка відображає, куди йде посилання? - це, здається, не відображається за замовчуванням, але якщо він є, ми можемо скриптувати проти нього, і це було б приголомшливо.
BrainSlugs83

1
@ BrainSlugs83 Щоб програмно досягти мети ReparsePoints, прочитайте цю відповідь
ТА


1

Я знаю, що ця відповідь пізно, але ось, можливо, щось ближче до того, що ви, напевно, шукали:

dir /AL /S C:\ | find "SYMLINK"

Звичайно, це також покаже файли та каталоги, які мають SYMLINKсвоє ім'я.
Скотт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.