El GNU cp y GNU mv Las herramientas se utilizan para copiar y mover archivos y directorios en el sistema operativo GNU/Linux. Una característica que falta en estas dos utilidades es que no muestran ninguna barra de progreso. Si copia un archivo o directorio grande, realmente no sabe cuánto tardará en completarse el proceso de copia o el porcentaje de datos copiados. No verá qué archivo se está copiando actualmente o cuántos ya se copiaron. Todo lo que verá es solo el cursor parpadeante y el indicador LED del disco duro. Gracias a Copia avanzada , un parche para Gnu Coreutils , ahora podemos agregar una barra de progreso a cp y mv comandos en Linux y muestra la barra de progreso al copiar y/o mover archivos y directorios grandes.
Advanced Copy es un mod para GNU cp y GNU mv programas Agrega una barra de progreso y brinda información sobre lo que sucede mientras copia o mueve archivos y carpetas. No solo la barra de progreso, también muestra la tasa de transferencia de datos, el tiempo restante estimado y el nombre del archivo que se está copiando actualmente. Al final, verá un breve resumen sobre cuántos archivos se copiaron y cuánto tiempo llevó copiar los archivos.
Instalar el parche 'Advanced Copy' para agregar una barra de progreso a los comandos cp y mv en Linux
Los comandos cp y mv son parte de GNU coreutils . Por lo tanto, debe descargar las últimas GNU coreutils desde aquí .
$ wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz Extraiga el archivo descargado usando el comando:
$ tar xvJf coreutils-8.32.tar.xz
Este comando extraerá el archivo coreutils en una carpeta llamada coreutils-8.32 en el directorio actual. Cd en él:
$ cd coreutils-8.32/ Descargue el parche de copia avanzada usando el siguiente comando:
$ wget https://raw.githubusercontent.com/jarun/advcpmv/master/advcpmv-0.8-8.32.patch Finalmente, aplique el parche ejecutando los siguientes comandos uno por uno:
$ patch -p1 -i advcpmv-0.8-8.32.patch $ ./configure $ make
Ahora dos nuevos binarios parcheados, a saber, cp y mv se creará en el coreutils-8.32/src carpeta. Simplemente cópielos en su $PATH como se muestra a continuación:
$ sudo cp src/cp /usr/local/bin/cp $ sudo cp src/mv /usr/local/bin/mv
Eso es todo. El cp y mv los comandos tienen funcionalidad de barra de progreso ahora.
Siempre que desee una barra de progreso al copiar o mover archivos y directorios, simplemente agregue -g marca como a continuación:
$ cp -g archlinux.iso mydownload/
O use --progress-bar bandera:
$ cp --progress-bar archlinux.iso mydownload/ Salida de muestra:
Copying at 25.7 MiB/s (about 0h 0m 1s remaining)
archlinux.iso 568.1 MiB / 646.0 MiB
[=========================================================================> ] 87.9 %
Al final del proceso de copia, verá cuántos archivos se copiaron, cuánto tiempo llevó copiar los archivos y la tasa de transferencia de datos por segundo. Bonito, ¿no?
1 files (646.0 MiB) copied in 11.8 seconds ( 54.7 MiB/s).
Para copiar un directorio y sus subdirectorios de forma recursiva, simplemente agregue -R bandera:
$ cp -gR directory1/ directory2/
De manera similar, para mover archivos usando mv comando, ejecutar:
$ mv -g archlinux.iso mydownload/
O use --progress-bar bandera:
$ mv --progress-bar archlinux.iso mydownload/
Para mover directorios con mv comando, use:
$ mv -g directory1/ directory2/
También puede crear alias para guardar algunas pulsaciones de teclas. Para hacerlo, edite ~/.bashrc archivo:
$ nano ~/.bashrc Agregue las siguientes líneas al final:
alias cp='/usr/local/bin/cp -gR'
alias mv='/usr/local/bin/mv -g'
Presiona Ctrl+o y Ctl+x para guardar y cerrar el archivo.
Ahora ejecute el siguiente comando para tomar efecto en los cambios:
$ source ~/.bashrc
De ahora en adelante, solo puedes usar cp o mv comandos sin -g (o --progress-bar ) bandera.
Tenga en cuenta que los programas originales no se sobrescriben. Todavía puedes llamarlos en cualquier momento a través de /usr/bin/cp o /usr/bin/mv .
Agregando la funcionalidad de la barra de progreso a cp y mv commands es una buena idea si a menudo copia o mueve muchos archivos y directorios grandes. Ahora puede ver qué está pasando exactamente mientras copia y mueve archivos, en lugar de mirar la pantalla.
El autor original envió el parche al equipo, que mantiene GNU CoreUtils. No fusionarán este parche, porque mv y cp tienen funciones completas.