El comando mv es uno de los comandos integrados de Linux y su función principal es mover archivos y directorios. Sin embargo, la función del comando mv no se limita a mover archivos; también realiza una variedad de otras tareas. En Linux, mv significa movimiento.
En este tutorial, aprenderemos cómo mover archivos y directorios en Linux usando el comando mv.
Cómo usar el comando mv
El comando mv se usa para mover archivos y directorios de una ubicación a otra. Al mover el comando mv, elimine el archivo o directorio original. Pero esperará a que los archivos/directorios se muevan por completo para finalizar la acción. Al mover un archivo a un destino, si el destino ya tiene un archivo con el mismo nombre, se sobrescribirá.
También puede usar el comando mv para cambiar el nombre del archivo y el directorio. Si ambos nombres de archivo o directorios están en el mismo sistema de archivos, se produce un cambio de nombre.
El mv no cambiará el nombre de un directorio a otro directorio si el directorio de destino contiene el mismo directorio con archivos. Los mensajes de "Directorio no vacío" aparecen debido a este motivo.
La sintaxis básica del comando mv es la siguiente.
Sintaxis:
$ mv [Options] Source Destination
[Options]
se refiere a las diversas opciones del comando mv. La Source
puede ser un único archivo o directorio o varios archivos o directorios. En el Destination
, se puede especificar un único archivo o directorio.
Debe tener permiso de escritura tanto en el Source
y el Destination
para mover un archivo o directorio, o recibirá un error de permiso denegado.
- Cuando la
Source
consta de numerosos archivos o directorios, elDestination
debe ser un directorio. Los archivos o directorios en elSource
se mueven alDestination
directorio.
Por ejemplo, si necesitamos mover el text1.txt
archivo al /dir1
directorio, la sintaxis sería la siguiente.
$ mv text1.txt /dir1
- Cuando la
Source
consta de numerosos archivos o directorios, elDestination
debe ser un directorio. Los archivos o directorios en elSource
se mueven alDestination
directorio.
- Cuando la
Source
es un solo archivo y elDestination
es un directorio, el archivo se mueve alDestination
directorio.
- Cuando el origen es un solo archivo y el destino es un nombre de archivo, el archivo de origen se renombra como el nombre de archivo de destino.
- El origen es un directorio, al igual que el destino, pero el directorio de destino no existe. En esta situación, el directorio de origen se renombrará como el directorio de destino. Si el directorio de destino ya existe, el directorio de origen se mueve a él.
Cómo mover varios archivos o directorios
Para mover varios archivos o directorios, primero debe especificar el Source
nombres de archivo y el Destination
directorio.
Por ejemplo, para mover archivos text1, text2 y text3 al directorio dir1, use la siguiente sintaxis.
$ mv text1 text2 text3 dir1
El comando mv también admite la coincidencia de patrones. Por ejemplo, podría usar la siguiente sintaxis para mover todos los archivos de texto al directorio ~/Documentos.
$ mv *.txt ~/Documents
Cómo cambiar el nombre de un archivo o directorio
Puede usar el comando mv para cambiar el nombre de un archivo o un directorio.
Por ejemplo, para cambiar el nombre de un archivo de text1.txt a text2.txt, use la siguiente sintaxis.
$ mv text1.txt text2.txt
Por ejemplo, si necesitamos mover el directorio dir1 al directorio dir2, la sintaxis sería la siguiente. Sin embargo, si el directorio dir2 no existe, el directorio dir1 se renombra como dir2.
$ mv dir1 dir2
Opciones del comando mv
El comando mv proporciona varias opciones para propósitos específicos. Algunas de las opciones útiles del comando mv son:
Preguntar antes de sobrescribir
Si el Destination
archivo o directorio ya existe, se sobrescribe de forma predeterminada. El -i
La opción se puede utilizar para mostrar un aviso de confirmación. La siguiente sintaxis se utiliza para mostrar avisos antes de sobrescribir.
$ mv -i Source Destination
Al intentar mover el archivo 1 al directorio dir1 cuando el archivo 1 ya existe en el directorio 1, aparecerá un mensaje como:
mv: overwrite 'dir1/file1'?
Si desea sobrescribir escriba y
o Y
.
No sobrescribir archivo existente
Para nunca sobrescribir un archivo existente, use la opción -n junto con el comando mv, como se muestra en la siguiente sintaxis.
$ mv -n Source Destination
Al intentar mover el archivo 1 al directorio dir1, si el archivo 1 ya existe, el comando no hará nada; de lo contrario, el archivo se moverá a dir1.
Forzar sobreescritura
La siguiente sintaxis se puede utilizar para forzar la sobrescritura de un archivo sin mostrar un mensaje de solicitud.
$ mv -f Source Destination
Archivos de copia de seguridad
Para hacer una copia de seguridad de un archivo en un archivo de destino existente, utilice la opción de línea de comandos -b. La siguiente sintaxis se puede utilizar para hacer una copia de seguridad de un archivo.
$ mv -b Source Destination
Se mostrará una tilde (~) en el archivo respaldado con el mismo nombre que el original.
Conclusión
En este tutorial, aprendimos a usar el comando mv en Linux. Para obtener más información, consulte man mv.