¿Cómo veo los enlaces duros de un archivo en Windows?

34

He encontrado una descripción de enlaces duros y uniones en Windows, sin embargo, me gustaría saber, desde la interfaz de usuario de Windows o el símbolo del sistema, ¿cómo puedo ver los enlaces duros de un archivo o carpeta en particular?

John K
fuente
¿Qué quiere decir exactamente con "vista" en este contexto?
John Gardeniers

Respuestas:

44

La fsutilutilidad incluida en Windows XP y superior. Ejemplo:

fsutil.exe hardlink list C:\Windows\System32\notepad.exe

Resultados de muestra (de Windows 7):

\Windows\System32\notepad.exe
\Windows\notepad.exe
\Windows\winsxs\amd64_microsoft-windows-notepadwin_31bf3856ad364e35_6.1.7600.16385_none_9ebebe8614be1470\notepad.exe
\Windows\winsxs\amd64_microsoft-windows-notepad_31bf3856ad364e35_6.1.7600.16385_none_cb0f7f2289b0c21a\notepad.exe
John K
fuente
¿Existe alguna forma de enumerar enlaces blandos y uniones para un archivo?
Massimo
Parece que en Server 2003 fsutil no es compatible con el hardlink listsubcomando. Solo hardlink createse muestra por fsutil hardlink.
bambams
5

fsutilrequiere privilegios elevados del sistema. Si solo necesita leer, y no crear, enlaces, esto es muy inconveniente.

Microsoft lanza también los enlaces de búsqueda gratuitos , que son mucho más amigables con la sintaxis, brindan detalles adicionales y no requieren privilegios especiales.

Juzgue usted mismo el mismo archivo, como el de John K, analizado con findlinks:

findlinks c:\windows\notepad.exe

FindLinks v1.0 - Locate file hard links                                                             
Copyright (C) 2011 Mark Russinovich                                                                 
Sysinternals - www.sysinternals.com                                                                 

c:\windows\notepad.exe                                                                              
        Index:  0x000037A6                                                                          
        Links:  3                                                                                   

Linking files:                                                                                      
c:\Windows\System32\notepad.exe                                                                     
c:\Windows\winsxs\amd64_microsoft-windows-notepadwin_31bf3856ad364e35_6.1.7600.16385_none_9ebebe8614
be1470\notepad.exe                                                                                  
c:\Windows\winsxs\amd64_microsoft-windows-notepad_31bf3856ad364e35_6.1.7600.16385_none_cb0f7f2289b0c
21a\notepad.exe                                                                                     

:: ::

antonio
fuente
2

No es directamente lo que necesita, pero puede ser útil para tal objetivo cuando se usa de manera inteligente:
FINDDUPE , una utilidad de línea de comandos independiente alojada en http://www.sentex.net/~mwandel/finddupe/ address, tiene una funcionalidad lateral, que permite la inclusión todos los enlaces dentro de un directorio de forma recursiva con la siguiente llamada:
finddupe -listlink <directory_of_interest>

Aquí hay un ejemplo de lo que se obtiene como salida:

Hardlink group, 2 of 2 hardlinked instances found in search tree:
  ".\1"
  ".\_1"

Number of hardlink groups found: 1

NOTA: Hay una serie de proyectos con el mismo nombre en SourceForge, pero en realidad nada aloja la utilidad anterior como por ahora.

Arseniy
fuente
1

La herramienta FindLinks de Sysinternals debería ser exactamente lo que necesita.

findlinks C:\Windows\notepad.exe
Massimo
fuente
0

Pruebe el programa NTFSLinksView : funciona bien para mí en Windows 10, debería funcionar en Vista y versiones posteriores.

Aidan
fuente
0

La lnutilidad CLI de Hermann Schinagl debería funcionar:

ln --list

También hay una extensión de shell .

drcursor
fuente
Gracias por el enlace a esta herramienta de línea de comandos: D
Radon8472