Tengo dos carpetas que contienen varios archivos. Algunos de los archivos de la primera carpeta tienen una copia exacta en la segunda carpeta. Me gustaría reemplazar aquellos con un enlace duro. ¿Cómo puedo hacer eso?
20
Tengo dos carpetas que contienen varios archivos. Algunos de los archivos de la primera carpeta tienen una copia exacta en la segunda carpeta. Me gustaría reemplazar aquellos con un enlace duro. ¿Cómo puedo hacer eso?
Respuestas:
Sé de 4 soluciones de línea de comandos para Linux. Mi preferido es el último enumerado aquí
rdfind
, debido a todas las opciones disponibles.fdupes
Salida de muestra (con las opciones "mostrar tamaño", "recursivo"):
enlace duro
--dry-run
opción.Ejemplo de salida (observe cómo mis dos archivos tienen tiempos de modificación ligeramente diferentes, por lo que en la segunda ejecución le digo que ignore eso):
sin valor
Salida de muestra (con la opción "recursiva"):
rdfind
find
?).Salida de muestra:
fuente
Duplicate Commander es una posible solución en Windows:
Para Linux, puede encontrar un script Bash aquí .
fuente
Duplicate & Same File Searcher es otra solución más en Windows:
fuente
Tenía una ingeniosa herramienta gratuita en mi computadora llamada Link Shell Extension; no solo fue genial para crear enlaces duros y enlaces simbólicos, ¡sino también Junctions! Además, agregó iconos personalizados que le permiten identificar fácilmente diferentes tipos de enlaces, incluso los que ya existían antes de la instalación; Las flechas rojas representan enlaces duros, por ejemplo, mientras que las verdes representan enlaces simbólicos ... y las cadenas representan uniones.
Desafortunadamente, desinstalé el software hace un tiempo (en una desinstalación masiva de varios programas), por lo que no puedo crear más enlaces manualmente, pero los íconos aún aparecen automáticamente cada vez que Windows detecta un enlace duro, simbólico o de unión.
fuente
Recomiendo jdupes . Es una bifurcación mejorada de fdupes , pero también incluye:
--linkhard
, o-L
para abreviarPara su pregunta, simplemente puede ejecutar
$ jdupes -L /path/to/your/files
.Es posible que desee clonar y construir la última fuente de su repositorio de GitHub ya que el proyecto aún está en desarrollo activo. Los binarios de Windows también se proporcionan aquí. Los binarios empaquetados están disponibles en algunas distribuciones de Linux / BSD, en realidad lo encontré por primera vez
$ apt search
.fuente