Aquí hay algunos comandos para copiar directorios con información de progreso.
Si hay muchos archivos pequeños:
cp -av sourcedir targetdir | pv -l -s filecount > logfile
Esto informará el progreso en función del número de archivos que se copian.
Puede redirigir a /dev/nullsi no lo necesita logfile.
Use el siguiente comando para obtener filecount:
find sourcedir | wc -l
Si hay pocos archivos enormes:
tar c sourcedir | pv -s size | tar x -C targetdir
Esto informará el progreso en función de los bytes que se copian.
targetdir debe existir
Use el siguiente comando para obtener size:
du -sh sourcedir
Si quieres usar rsync:
rsync -ai sourcedir/ targetdir/ | pv -l -s filecount > logfile
Obtenga filecountcomo se muestra arriba.
Si está copiando en el mismo sistema, entonces rsync -aes prácticamente igual que cp -a. Las ventajas de rsync es cuando está copiando a través de la red o si está actualizando (o comparando) una copia anterior.
Vea aquí para más detalles: