
Мне нужно скопировать много файлов. Обычно я использую rsync, потому что я передаю ему -aP
параметры и могу видеть (a) сколько файлов осталось обработать и (b) какая часть каждого отдельного файла скопирована.
Однако rsync также делает много вещей с контрольными суммами, чтобы проверить, что файл был скопирован. Однако мне это сейчас не нужно. Но normal cp
не включает вышеупомянутое количество оставшихся файлов, что очень полезно.
Есть ли что-то подобное cp
, которое показывает прогресс по количеству оставшихся файлов, но не такое тяжелое, как rsync
?
решение1
Вы можете запустить rsync с ключом -W, что отключит контрольные суммы.
решение2
Подойдет ли этот псевдоним для ваших предложений?
cp_p() {
rsync -WavP $1 $2
}
-W - не использовать алгоритм дельта-передачи
-a режим архивации
-v подробный
-P показывать индикатор выполнения и сохранять частичные файлы
еще одну альтернативу я нашел в каком-томеста. однако требуется пакет pv (pipeviewer).
cp_pv() {
pv -per $1 > $2
}
-p показать прогресс
-e показать eta
-r показать скорость
-n показать числовой вывод
/edit Я проверил вышеуказанные псевдонимы и могу подтвердить, что они работают. Раньше были некоторые опечатки
решение3
вы можете просто добавить опцию -v в командной строке cp или использовать scp для локального хоста
решение4
Это излишне из-за накладных расходов на шифрование, но вы можете использовать scp
локально:
scp <file-from> <file-to>
В процессе копирования будет отображаться ход выполнения.