Cuando está copiando muchos archivos, du -s /path/to/destination
o find /path/to/destination | wc -l
le da una idea de cuánto se ha hecho.
Puede averiguar qué archivo se está copiando lsof -p1234
donde 1234 es la ID del proceso cp
. En muchos sistemas, pgrep -x cp
informa los ID de proceso de todos los procesos en ejecución nombrados cp
. Esto puede no ser muy útil ya que el orden en que se copian los archivos dentro de un directorio dado es esencialmente impredecible (en un directorio grande en Linux, ls --sort=none
se lo dirá; con un árbol de directorios, intente find
).
lsof -p1234
también le dice cuántos bytes cp
ya ha leído y escrito para el archivo actual, en la OFFSET
columna.
En Linux, hay estadísticas de uso de E / S en /proc/$pid/io
(nuevamente, use el PID del cp
proceso para $pidf
). El rchar
valor es el número total de bytes que el proceso ha leído, y wchar
es el número de bytes que el proceso ha escrito. Esto incluye no solo datos en archivos sino también metadatos en directorios. Puede comparar esa cifra con la cifra aproximada obtenida con du /path/to/source
(que solo cuenta los datos del archivo).
read_bytes
y write_bytes
solo incluye lo que se ha leído o escrito del almacenamiento, es decir, excluye el diagnóstico del terminal y los datos que ya están en la memoria caché o que todavía están en las memorias intermedias.
while sleep 1 ; do sync ; done
.