Progress bar for cp – визуальное копирование в консоли

Читая топик на Хабре про утилиту pv (pv — это сокращенно от pipeviewer, то есть ни много не мало как просмотрщик пайпов? замена стандартному cat) захотел использовать его при копировании файлов.

Попробовал, как предлагает товарищ romi4 в каментах:

pv /path/to/file/name | cat — >/output/path/file

работает, но... с одним, например, большим файлом, а вот если нужно скопировать каталог :(

Нашел скрипт ‘bar’ – ‘cat’ with ASCII progress bar. Но и он для такого случая не пригоден. По крайней мере мне не удалось его заставить копировать рекурсивно каталог. Да и синтаксис нужно его запоминать.

Хотел было плюнуть на это дело, но всемогущий google как всегда помог.
Проблема решается просто с помощью rsync!

rsync -rv src dst --progress:

-r для рекурсии
src исходный каталог
dst каталог назначения
--progress для отображения прогресса


Но есть и ложка дегтя – прогресс отображается для каждого файла по отдельности :(

Я пользуюсь для таких дел модифицированным cp
Патчик можно стянуть с
http://www.beatex.org/web/advancedcopy.html

После его применения, cp начинает понимать ключик -g, выводящий прогресс бар. Умеет расчитывать время до завершения, так же отображает суммарый прогресс бар при рекурсивном копировании или копировании нескольких файлов.
2012   bash   linux   shell
Popular