Когда вы копируете много файлов du -s /path/to/destinationили find /path/to/destination | wc -lдаете представление о том, сколько уже сделано.
Вы можете узнать, в какой файл копируется, lsof -p1234где 1234 - это идентификатор процесса cp. Во многих системах pgrep -x cpсообщает идентификаторы всех запущенных процессов cp. Это может быть не очень полезно, так как порядок, в котором копируются файлы внутри данного каталога, по сути непредсказуем (в большом каталоге в Linux ls --sort=noneвам скажут; с деревом каталогов, попробуйте find).
lsof -p1234также сообщает вам, сколько байтов cpуже прочитано и записано для текущего файла в OFFSETстолбце.
В Linux есть статистика использования IO /proc/$pid/io(опять же, используйте PID cpпроцесса для $pidf). rcharЗначение представляет собой общее количество байт , что процесс чтения и wcharэто количество байт , что процесс записи. Это включает в себя не только данные в файлах, но и метаданные в каталогах. Вы можете сравнить эту цифру с приблизительной цифрой, полученной с du /path/to/source(которая учитывает только данные файла).
read_bytesи write_bytesвключать только то, что было прочитано или записано из хранилища, то есть исключает диагностику терминала и данные, уже находящиеся в кеше или все еще в буферах.
while sleep 1 ; do sync ; done.