`cp` (copia):
* crea un duplicado: `CP` crea una copia completamente separada del archivo. Esta copia ocupa su propio espacio en el disco. Los cambios realizados en el archivo original no afectarán la copia y el viceversa.
* Tamaño del archivo: El archivo copiado tendrá el mismo tamaño que el original.
* metadatos: Si bien algunos metadatos (como permisos y marcas de tiempo) pueden copiarse, no siempre es una replicación perfecta. El número de inodo (un identificador único para un archivo en el sistema de archivos) será diferente.
* Uso: Use `CP` cuando necesite una versión independiente y separada de un archivo. Si modifica uno, el otro permanece intacto.
`ln` (enlace):
* Crea un puntero: `ln` crea un enlace, que es esencialmente un puntero al archivo original. No crea una nueva copia de los datos; En cambio, crea una nueva entrada de directorio que apunta al mismo inodo que el archivo original.
* Tamaño del archivo: El enlace en sí ocupa muy poco espacio en disco. El tamaño es esencialmente del tamaño del nombre del enlace.
* metadatos: El enlace hereda algunos metadatos del archivo original.
* Dos tipos de enlaces:
* Enlaces duros: Solo se puede crear para archivos (no directorios), y múltiples enlaces duros apuntan a los mismos datos. Eliminar un enlace duro no elimina los datos originales a menos que * todos * se eliminen los enlaces duros.
* enlaces simbólicos (enlaces suaves): Puede apuntar a los archivos * o * directorios. Contienen la ruta al archivo original. Eliminar un enlace simbólico no afecta el archivo original. Si el archivo original se mueve o elimina, el enlace simbólico se romperá.
Aquí hay una tabla que resume las diferencias clave:
| Característica | `cp` (copia) | `ln` (enlace) |
| ---------------- | ---------------------- | ---------------------- |
| Acción | Crea un duplicado | Crea un puntero |
| Espacio en disco | Utiliza espacio adicional | Espacio adicional mínimo |
| Cambio de datos | Copias independientes | Los cambios afectan todos los enlaces (enlaces duros) |
| Eliminación de archivos | Eliminar una copia no afecta a otros | Eliminar todos los enlaces duros Elimina los datos; Los enlaces simbólicos se rompen |
| Tipo de archivo | Funciona en archivos y directorios | Enlaces duros:solo archivos; enlaces simbólicos:archivos y directorios |
Ejemplo:
Digamos que tiene un archivo llamado `myDocument.txt`.
* `CP myDocument.txt myDocument_Copy.txt` crea una copia completamente separada.
* `ln myDocument.txt myDocument_link` crea un enlace duro. Tanto `myDocument.txt` como` myDocument_link` se refieren a los mismos datos.
* `ln -s myDocument.txt myDocument_Symlink` crea un enlace simbólico. `myDocument_Symlink` señala` myDocument.txt`.
En esencia:use `cp` cuando necesite una copia verdadera; Use `ln` cuando desee múltiples nombres que apunten a los mismos datos (enlaces duros) o un atajo conveniente (enlaces simbólicos). Elija el comando que mejor se adapte a sus necesidades en función de si necesita copias independientes o una referencia eficiente.