Отслеживание хода работы rsync с помощью примеров кода

  1. Использование параметра --progress:

    rsync --progress source/ destination/

    Опция --progressотображает ход передачи, показывая процент завершения, скорость и расчетное оставшееся время.

  2. Использование параметра --info=progress2:

    rsync --info=progress2 source/ destination/

    Эта опция предоставляет более подробную информацию о ходе передачи, включая количество переданных файлов, общий размер передачи и текущий передаваемый файл.

  3. Использование команды pv(Просмотр каналов):

    rsync -a source/ destination/ | pv -lep -s $(du -sb source/ | awk '{print $1}')

    Этот метод использует команду pvдля отслеживания хода операции rsync. Он вычисляет общий размер исходного каталога с помощью duи передает его в pvкак общий размер передаваемого файла.

  4. Использование сценария-оболочки:
    Вы можете создать сценарий-оболочку, который запускает команду rsync и периодически распечатывает ход выполнения. Вот пример в Bash:

    #!/bin/bash
    rsync -a source/ destination/ | while IFS= read -r line; do
       echo "$line"
       # Add any additional processing here
    done

    Этот сценарий захватывает выходные данные rsync и печатает их построчно. При необходимости вы можете добавить любую дополнительную обработку или форматирование.

Это несколько методов мониторинга хода операции rsync. Выберите тот, который лучше всего соответствует вашим требованиям.