Lihat daftar tautan simbolis pada sistem?

56

Apakah ada cara untuk melihat daftar semua tautan simbolik yang aktif di mesin Windows?

Louis
sumber

Jawaban:

93

Coba perintah berikut:

dir /AL /S C:\
  • /Amenampilkan semua file dengan atribut tertentu, dan Lmenentukan titik reparse (symlink dan persimpangan direktori)
  • /S membuat perintah rekursif
  • ganti C:\dengan huruf drive yang ingin Anda pindai, atau dengan lintasan jika Anda tidak ingin memindai seluruh drive
Indrek
sumber
2
Apakah ada cara untuk membuatnya tidak berulang menjadi symlink / persimpangan sehingga tidak terjebak dalam loop tak terbatas?
BrainSlugs83
15

Di PowerShell

Dir C:\ -Force -Recurse -ErrorAction 'silentlycontinue' | 
  Where { $_.Attributes -match "ReparsePoint"}
  • -Force termasuk file tersembunyi dan sistem
  • -Recurse mendapat semua item anak
  • -ErrorAction 'silentlycontinue'menekan Akses ke jalur XYZ ditolak kesalahan
  • Where { $_.Attributes -match "ReparsePoint"}memeriksa folder dan file apakah itu persimpangan

Penjelasan atribut Mode :

  • d - Direktori
  • a - Arsip
  • r - Hanya-baca
  • h - Tersembunyi
  • s - Sistem
  • l - Titik reparse, symlink, dll.
nixda
sumber
Terima kasih - ini bisa sangat ampuh untuk skrip - apakah ada properti yang menampilkan ke mana tautannya? - tampaknya tidak ditampilkan secara default, tetapi jika ada di sana kita bisa skrip menentangnya dan itu akan luar biasa.
BrainSlugs83
1
@ BrainSlugs83 Untuk mendapatkan target ReparsePoints secara terprogram, baca jawaban SO ini
nixda
5

Ada juga program praktis untuk itu yang disebut NTFSLinksView .

Edit: ada juga SageLinks , ini salah satu cek validitas juga.

Colin Lamarre
sumber
1

Saya tahu jawaban ini terlambat, tetapi mungkin ada sesuatu yang lebih dekat dengan apa yang mungkin Anda cari:

dir /AL /S C:\ | find "SYMLINK"
c D
sumber
Tentu saja ini juga akan menampilkan file dan direktori yang ada SYMLINKdi namanya.
Scott