Когда вы копируете много файлов 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
.