Мне нужно скопировать много файлов. Обычно я использую rsync, потому что передаю ему -aP
варианты, и я могу видеть (а) сколько файлов осталось обработать и (б) сколько копируется каждый отдельный файл.
Однако rsync также многое делает с контрольными суммами, чтобы убедиться, что файл был скопирован. Однако сейчас мне это действительно не нужно. Но нормально cp
не включает указанное выше количество оставшихся файлов, что очень полезно.
Есть что-нибудь вроде cp
который включает в себя количество оставшихся файлов, но не такой тяжелый, как rsync
?
Вы можете запустить rsync с ключом -W, который отключит контрольные суммы.
Так это подходящий псевдоним для ваших предложений?
cp_p() {
rsync -WavP $1 $2
}
-W -не использовать алгоритм передачи дельты
-a режим архива
-v подробный
-P показать индикатор выполнения и сохранить частичные файлы
другую альтернативу я нашел в некоторых места. однако требуется пакет pv (pipeviewer).
cp_pv() {
pv -per $1 > $2
}
-p показать прогресс
-e показать eta
-r показать скорость
-n показать числовой вывод
/ edit Я проверил приведенные выше псевдонимы и могу подтвердить, что они работают. Раньше были опечатки
вы можете просто указать параметр -v в команде cp или использовать scp для локального хоста
Взгляните на pipeviewer / pv:
http://www.ivarch.com/programs/pv.shtml
Пример для копии:
http://blog.amit-agarwal.co.in/2010/11/11/function-copy-files-progress-bar-pv-pipe-viewer/
Это избыточно из-за накладных расходов на шифрование, но вы можете использовать scp
локально:
scp <file-from> <file-to>
Он будет отображать прогресс во время копирования.
gcp
хороший инструмент. Здесь у вас есть Пакет PyPI, но это также можно найти в пакете дистрибутива (например, в дебиан/убунту apt-get install gcp
сделать работу).
Также есть приятный учебная статья о gcp.
$ gcp -r Solaar/ solaar2 Copying 7.53 MiB 100% |#############################| 134.92 M/s Time: 00:00:00