Bienvenido/a
0412 523 4622 - 0273 514 7775

Cómo mover archivos y directorios en Linux con el comando mv

Mover archivos y directorios es una de las tareas más básicas que a menudo necesita realizar en un sistema Linux.

En este tutorial, explicaremos cómo usar el comando mv para mover archivos y directorios.

El comando mv (corto del movimiento) se usa para renombrar y mover archivos y directorios de una ubicación a otra. La sintaxis del comando mv es la siguiente:

mv [OPTIONS] source destination

 

El source puede haber uno o más archivos o directorios, y destination puede haber un único archivo o directorio.

 

  • Si especifica varios archivos o directorios como a sourcedestination debe ser un directorio. En este caso, los archivos source se mueven al directorio de destino.
  • Si especifica un solo archivo como source, y el destino destination es un directorio existente, entonces el archivo se mueve al directorio especificado.
  • Si especifica un solo archivo como source, y un solo archivo como destino destination, entonces está cambiando el nombre del archivo .
  • Si sourcees un directorio y destinationno, se cambiará source su nombre a destination, de lo contrario, se moverá dentro del directorio destination.

Para mover un archivo o directorio es necesario tener permisos de escritura en tanto sourcedestination. De lo contrario, recibirá un error de permiso denegado.

Por ejemplo, para mover el archivo file1 del directorio de trabajo actual al directorio /tmp ejecutaría:

mv file1 /tmp

 

Para cambiar el nombre de un archivo, especifique el nombre del archivo de destino:

mv file1 file2

 

El comando para mover directorios es el mismo que para mover archivos. En el siguiente ejemplo, si el directorio dir2 existe, el comando se moverá hacia dir1 adentro dir2. Si dir2 no existe, dir1 será renombrado a dir2:

mv dir1 dir2

Para mover varios archivos y directorios, especifique los archivos que desea mover como origen. Por ejemplo, para mover los archivos file1file2 al directorio dir1 escribiría:

mv file1 file2 dir1

 

El comando mv también le permite utilizar la coincidencia de patrones. Por ejemplo, para copiar todos los archivos pdf del directorio actual al directorio ~/Documents usaría:

mv *.pdf ~/Documents

El comando mvacepta opciones que afectan el comportamiento predeterminado del comando. En algunas distribuciones de Linux mv puede ser un alias para el comando mv con un conjunto personalizado de opciones. Por ejemplo en CentOS mves un alias para mv -i. Puedes encontrar si mv es un alias usando el comando type:

type mv

 

Si mves un alias la salida se verá así:

mv is aliased to `mv -i'

 

Si especifica opciones en conflicto, la última opción especificada toma precedencia.

Por defecto, si el archivo de destino existe, se sobrescribirá. Para solicitar confirmación utilice la opción -i:

mv -i file1 /tmp
mv: overwrite '/tmp/file1'?

 

Para sobrescribir el archivo, escriba el carácter yY.

Si intenta sobrescribir un archivo de solo lectura, el comando mv le preguntará si desea sobrescribir el archivo:

mv -i file1 /tmp
mv: replace '/tmp/file1', overriding mode 0400 (r--------)? 

 

Para evitar que se le solicite, utilice las opciones -f:

mv -f file1 /tmp

 

Esta opción es especialmente útil cuando necesita sobrescribir varios archivos de solo reed.

La opción -n le dice a mv nunca sobrescribir cualquier archivo existente:

mv -f file1 /tmp

 

Si existe un comando file1, el comando anterior no hará nada; de lo contrario, copiará el archivo en el directorio /tmp.

Si el archivo de destino existe, puede crear una copia de seguridad de él utilizando la opción -b:

mv -b file1 /tmp

 

El archivo de copia de seguridad tendrá el mismo nombre que el archivo original con una tilde ( ~) anexada a él.

Use el comando ls para verificar que la copia de seguridad fue creada:

ls /tmp/file1*
/tmp/file1  /tmp/file1~

Otra opción que puede ser útil es -v. Al usar esta opción, el comando imprimirá el nombre de cada archivo movido:

mv -i file1 /tmp
renamed 'file1' -> '/tmp/file1'

 

A estas alturas ya debe tener una buena comprensión de cómo usar el comando mv para mover archivos y directorios. Los nuevos usuarios de Linux que están intimidados por la línea de comandos pueden usar el administrador de archivos GUI para mover sus archivos.