How to Move Files in Linux: Mastering "mv" command

Cómo mover archivos en Linux: Dominando el comando “mv

Para mover archivos en Linux es necesario utilizar el comando mv. He aquí algunos ejemplos:

# move file1 to file2 (what command actually does is renaming the file)
$ mv file1 file2
# move file1 from dir1 to dir2
$ mv folder1/file1 folder2/
# move all files from folder1 to folder2
$ mv folder1/* folder2/

Cuando se utiliza para mover un archivo dentro del mismo directorio o a un directorio diferente, mv cambia efectivamente el nombre del archivo si las rutas de origen y destino están dentro del mismo sistema de archivos.

Ahora que hemos tocado los fundamentos del comando ‘mv’ en Linux, vamos a explorar más formas de mover archivos y directorios de manera eficiente.

Dominar el comando “mv

Mover varios archivos

El comando mv no se limita a mover un único archivo cada vez. Puede mover varios archivos simultáneamente utilizando comodines. Por ejemplo, para mover todos los archivos de texto de un directorio a otro, puede emplear el siguiente comando:

$ mv *.txt destination_directory/

Este comando selecciona todos los archivos con extensión “.txt” y los mueve al directorio de destino especificado. El asterisco (*) actúa como comodín, coincidiendo con cualquier carácter.

Sobrescritura de archivos

Al mover archivos, puede ocurrir que ya exista un archivo con el mismo nombre en el directorio de destino. Por defecto, el comando mv le pedirá confirmación antes de sobrescribir un archivo. Sin embargo, puede anular este comportamiento utilizando la opción -f:

$ mv -f filename destination_directory/

Tenga cuidado al utilizar la opción -f, ya que sobrescribirá los archivos existentes sin ninguna confirmación.

Conservar los metadatos de los archivos

El comando mv no sólo reubica los archivos, sino que también permite conservar sus metadatos, incluidas las marcas de tiempo y los permisos. Para mantener las marcas de tiempo originales de los archivos durante el traslado, utilice la opción -p:

$ mv -p filename destination_directory/

Esto resulta especialmente útil cuando se desea garantizar que los archivos movidos conserven sus marcas de tiempo de creación y modificación originales.

Modo Verboso

Si prefiere ver información detallada sobre los archivos que se mueven, puede utilizar la opción -v para activar el modo detallado:

$ mv -v filename destination_directory/

El modo detallado proporciona información en tiempo real, mostrando cada archivo a medida que se mueve, proporcionando una comprensión más clara del proceso.

Directorios en movimiento

El comando mv también puede manejar sin problemas los movimientos de directorios. Para mover un directorio completo y su contenido, basta con especificar los directorios de origen y destino:

$ mv source_directory/ destination_directory/

Este comando mueve todo el contenido del directorio de origen al directorio de destino especificado.

Formas alternativas de mover archivos en Linux

Además del comando mv, Linux proporciona algunos otros comandos y utilidades para mover archivos y directorios. He aquí un par de alternativas:

Comando cp (Copiar) con la opción -r

El comando cp se utiliza tradicionalmente para copiar archivos, pero también puede utilizarse para moverlos combinándolo con la opción -r (recursivo). Esta opción es necesaria cuando se trabaja con directorios y su contenido.

$ cp -r source_directory/ destination_directory/

Este comando copia recursivamente el contenido del directorio de origen en el directorio de destino y realiza una operación de traslado.

Comando rsync

El comando rsync es una potente herramienta para sincronizar y copiar archivos. También se puede utilizar para mover archivos entre directorios. La sintaxis básica es:

$ rsync -av --remove-source-files source_directory/ destination_directory/

La opción -a conserva los permisos del archivo y otros atributos.
La opción -v activa el modo detallado para mostrar los archivos que se están procesando.
La opción –remove-source-files elimina los archivos del directorio de origen tras una transferencia correcta.

rsync es especialmente útil para mover grandes cantidades de datos y mantener la sincronización entre el origen y el destino.

comando find y exec

El comando find, combinado con exec, puede utilizarse para mover archivos en función de determinados criterios. Por ejemplo, para mover todos los archivos de texto de un directorio y sus subdirectorios a una nueva ubicación:

$ find source_directory/ -type f -name "*.txt" -exec mv {} destination_directory/

Este comando busca todos los archivos (-type f) con la extensión “.txt” y ejecuta el comando mv en cada uno de ellos, moviéndolos al destino especificado.

Resumen

Dominar el comando mv en Linux es esencial para una gestión eficaz de archivos y directorios. Hemos cubierto el uso fundamental del comando mv, desde el simple renombrado de archivos hasta el movimiento de directorios enteros. Además, exploramos comandos alternativos como cp con la opción -r, el comando rsync y la combinación dinámica de find y exec para movimientos más especializados. Al incorporar estos comandos a su conjunto de herramientas de Linux, podrá gestionar archivos sin problemas y aprovechar al máximo las sólidas capacidades que ofrece la línea de comandos de Linux.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 5 / 5. Recuento de votos: 1

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.