
Я работаю над оболочкой вокруг rsync
, и одним из моментов будет определение того, достаточно ли места в месте назначения для размещения перевода; в результате я хотел бы узнать размер перевода, чтобы можно было сравнить его с выводом du
.
Я знаю оиспользование rsync
для создания списков измененных файлов, но, учитывая потенциально огромные списки файлов, а также необходимость анализа выходных данных этого rsync
вызова и накладные расходы на сканирование этого списка файлов при запуске diff
для каждого файла и последующем вычислении разницы, я хотел бы узнать, существуют ли собственные (или просто лучшие) способы сделать это.
решение1
Он не покажет размер частичных передач, но вы можете получить общее представление об общем размере набора данных, добавив переключатели --dry-run
и --stats
к rsync
. Он не тестирует дальнюю сторону операции, чтобы увидеть, сколько данных было изменено, но по крайней мере покажет вам размер всех файлов, которыеможетбыть синхронизированы.