La copia de archivos, en relación con las computadoras, es el proceso de crear un duplicado exacto de la información contenida en un archivo de computadora. Dependiendo del sistema operativo o software que se utilice, el archivo copiado también puede contener metadatos idénticos, como la fecha de creación, aunque esta información a veces no se duplica, específicamente para distinguir la copia del original en algún aspecto. Casi todos los sistemas operativos admiten alguna forma de copia de archivos, con ciertos sistemas que contienen mecanismos que permiten que los archivos se copien desde cualquier ubicación, incluso a través de una red. Pueden ocurrir ciertas complicaciones al realizar una copia de archivo, incluida una colisión de nombres en la que dos archivos tienen el mismo nombre y una falla de copia en la que no se copia ningún archivo, a veces debido a restricciones de seguridad y otras veces debido a factores de hardware como la falta de espacio libre en disco.
Hay dos formas principales para que un usuario realice la copia de archivos. El primero es iniciar el comando de copia desde una interfaz de línea de comandos. Por lo general, esto implica escribir un comando seguido del nombre del archivo de origen y luego el nombre y la ubicación del archivo de destino. Alternativamente, la copia de archivos se realiza más comúnmente mediante el uso de una interfaz gráfica de usuario (GUI) que permite a los usuarios interactuar y ver los archivos de una manera gráfica más natural. Cuando se utiliza una GUI para copiar archivos, el archivo suele estar representado por un icono en la pantalla que se puede arrastrar con el mouse y colocar en una nueva ubicación.
Aunque los sistemas operativos admiten de forma nativa la copia de archivos, a veces se utilizan aplicaciones de software independientes para ayudar a administrar el proceso. Esto es especialmente cierto en los casos en los que es necesario duplicar una gran cantidad de archivos, lo que puede ocupar recursos del sistema y hacer imposible el uso de la computadora hasta que se hayan copiado todos los archivos. En estos casos, algunos programas están diseñados para funcionar en segundo plano con un nivel de prioridad bajo o para tener características especiales integradas, como capacidades de copia acelerada o una función de pausa.
Desde una perspectiva de programación, la copia de archivos puede ser un proceso bastante sencillo. Se abre el archivo de origen y se crea un archivo de destino vacío. Cada byte del archivo de origen se lee en un programa y luego se escribe en el archivo de destino. El nuevo archivo tendrá el contenido exacto del archivo de origen, pero puede contener metadatos diferentes. La mayoría de las veces, esto significa que la fecha en que se creó el archivo coincidirá con la fecha en que se copió el archivo y puede ser diferente de la fecha en que se creó realmente el archivo de origen.