Как показать прогресс в Rsync

Rsync - это популярный инструмент для синхронизации файлов и каталогов между двумя системами. Вы можете использовать его для синхронизации файлов и папок как локально, так и удаленно. Это интеллектуальный инструмент, который вычисляет разницу между двумя файлами и копирует только разницу вместо полной передачи файла. Это экономит пропускную способность сети и повышает скорость работы. По умолчанию rsync не отображает никаких сообщений во время передачи файлов. Иногда вам может понадобиться просмотреть ход выполнения команды rsync, если вы передаете большие файлы и каталоги. В этой статье мы узнаем, как показать прогресс в Rsync.

Как показать прогресс в Rsync

Вот синтаксис команды rsync.

Есть несколько способов просмотреть прогресс выполнения команды rsync.

1. Использование опции --progress

Вы можете использовать опцию --progress или -P, чтобы заставить rsync отображать информацию о ходе передачи файлов. Вот пример команды.

Вы увидите следующий вид вывода.

Приведенный выше вывод говорит, что 100000 байт, то есть 75% файлов, были восстановлены со скоростью 220,64 кбит/с и передача файлов завершится через 3 секунды. Но это лишь приблизительная оценка. Когда передача файла завершится, rsync заменит ее реальными значениями.

Как вы можете видеть, фактическая передача заняла 6 секунд. Это делается для каждого файла. xfer#7 указывает, что это 7-й передаваемый файл. to-check=200/396 указывает, что нужно проверить еще 200 файлов.

rsync --progress testdir1/ testdir2/

Если вы хотите увидеть больше деталей, вы также можете использовать опцию --stats в команде rsync.

2. Использование команды pv

Вы также можете использовать команду pv для просмотра хода выполнения команды. Она отображает следующую информацию:

  • Текущая пропускная способность
  • Прошедшее время
  • Общее количество переданных данных
  • Процент выполнения с индикатором выполнения
  • Расчетное время

Вот команда для установки команды pv в Ubuntu/Debian Linux.

После ее установки вы можете использовать команду pv для просмотра прогресса или команду rsync.

По сути, мы передаем вывод команды rsync команде pv, чтобы отобразить прогресс в понятной форме. Вот как будет выглядеть ваш вывод.

rsync -vrltD --stats --human-readable testdir1/ testdir2/ | pv -lep -s 5

Понравилась статья? Поделиться с друзьями:
Добавить комментарий