Se puede crear una copia de un archivo entro archivo o dentro de un directorio con el comando cp. Con el comando mv podemos mover un archivo a otro directorio o renombrarlo. Con el comando rm podemos eliminar un archivo o directorio.
Conozcamos los comandos básicos para copiar archivos (copiar pegar), moverlos (cortar pegar o renombrar) y eliminarlos desde la consola o shell.
Copiar archivos
Con esta opción realizamos el típico Copiar-Pegar y para esto utilizamos el comando cp (copy).
cp [opciones] archivo archivo-copia
En el siguiente ejemplo tenemos un archivo llamado documento.txt y deseamos hacer una copia en la misma carpeta.
Para realizar la copia del archivo documento.txt ejecutamos el comando cp seguido del archivo a copiar y después el nombre que obtendrá la copia.
$ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:10 documento.txt $ cp documento.txt documento-copia.txt $ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:25 documento-copia.txt -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:10 documento.txt
Ahora realicemos la copia del archivo doumento.txt dentro de la carpeta respaldo. En este ejemplo especificamos el nombre del archivo documento.txt seguido de la carpeta de destino.
$ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 documento.txt drwxr-xr-x 2 alberto alberto 4096 2009-08-08 00:33 respaldo $ cp documento.txt respaldo/ $ cd respaldo /respaldo$ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:33 documento.txt
Si ya hemos realizado copias de un archivo o varios es recomendable usar la opción -i. Esta opción nos pregunta si deseamos sobrescribir el archivo de lo contrario sobrescribirá el archivo.
$ cp -i documento.txt respaldo/ cp: ¿sobreescribir «respaldo/documento.txt»? (s/n) s
Trasladar archivos
Al trasladar un archivo estamos realizando la clásica tarea de Cortar-Pegar y para esto utilizamos el comando mv (move). También se utiliza para renombrar un archivo.
mv [opciones] archivo directorio-destino
Para este ejemplo tenemos el archivo documento.txt y el directorio llamado destino. Vamos a mover el archivo dentro del directorio o mejor dicho cortamos el archivo documeto.txt y lo pegamos en el directorio destino.
$ ls -l drwxr-xr-x 2 alberto alberto 4096 2009-08-08 00:52 destino -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 documento.txt $ mv documento.txt destino/ $ ls destino $ cd destino /destino$ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 documento.txt
En la línea 5 utilizamos el comando ls para observar el contenido del directorio y podemos observar que el archivodocumento.txt y no se encuentra, ahora entremos en el directorio destino donde encontraremos el archivo.
Es posible que exista un archivo con el mismo nombre en el directorio destino, por esta razón es recomendable usar la opción -i que nos consulta si deseamos sobrescribir el archivo.
$ ls -l drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:18 destino -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 documento.txt $ mv -i documento.txt destino/ mv: ¿sobreescribir «destino/documento.txt»? (s/n) s
Ahora veamos como renombrar el archivo.
mv [opciones] archivo nombre-nuevo
Siguiendo la sintaxis anterior después del comando mv especificamos el nombre del archivo a cambiar seguido del nombre que le asignaremos.
$ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 documento.txt $ mv documento.txt nuevo-nombre.txt $ ls -l -rw-r--r-- 1 alberto alberto 64 2009-08-08 00:29 nuevo-nombre.txt
Eliminar archivos
Es común que ya no necesitemos archivos o directorios. Para esto utilizaremos el comando rm (remove) y rmdir (remove directory) cada uno para borrar archivos y directorios respectivamente. Aunque con la opción -r para el comando rm nos permite eliminar un directorio que no este vacío.
De ejemplo para los comandos anteriores se utilizo el archivo documento.txt y se cambio el nombre a nuevo-nombre.txt y se crearon los directorios destino y respaldo, como ya no los vamos a utilizar hay que eliminarlos.
rm [opciones] archivo(s)
Borremos el archivo nuevo-nombre.txt.
$ ls -ls drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:21 destino -rw-r--r-- 1 alberto alberto 0 2009-08-08 01:32 nuevo-nombre.txt drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:32 respaldo $ rm nuevo-nombre.txt $ ls -l drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:21 destino drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:32 respaldo
Nuevamente aparece la opción -i que nos consulta si deseamos borrar el archivo.
$ rm -i nuevo-nombre.txt rm: ¿borrar el archivo regular vacío «nuevo-nombre.txt»? (s/n) s
Y para borrar los directorios escribimos:
$ ls -l drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:36 destino drwxr-xr-x 2 alberto alberto 4096 2009-08-08 01:36 respaldo $ rmdir destino respaldo $ ls -l total 0
La opción -i no existe en el comando rmdir ya que solo borra directorios vacíos lo cual no genera algún problema.
Para poder borrar los directorio es necesario que estén vacíos de lo contrario nos mostrara un error.
$ rmdir destino respaldo rmdir: No se pudo eliminar «destino»: El directorio no está vacío rmdir: No se pudo eliminar «respaldo»: El directorio no está vacío
Para resolver esto utilizamos el comando para borrar archivos rm de la siguiente manera:
$ rm -r destino respaldo $ ls -l total 0
La opción -r elimina todos los archivos del directorio especificado.