Как я могу надежно подсчитать количество приращений в каталоге rdiff-backup?

rdiff-backup Утилита используется для создания инкрементного зеркала дерева каталогов. Я хотел бы узнать количество сохраненных приращений и сохранить только это число в значение переменной. Я делаю это из скрипта bash, и мне нужно иметь доступ к коду возврата rdiff-backup Команда, когда она завершается.

Команду можно запустить для вывода некоторой статистики:

rdiff-backup --print-statistics $source_dir $mirror_dir

Который дает:

--------------[ Session statistics ]--------------
StartTime 1478018786.00 (Tue Nov  1 16:46:26 2016)
EndTime 1478018802.13 (Tue Nov  1 16:46:42 2016)
ElapsedTime 16.13 (16.13 seconds)
SourceFiles 41812
SourceFileSize 16462964041 (15.3 GB)
MirrorFiles 41812
MirrorFileSize 16462964041 (15.3 GB)
NewFiles 1
NewFileSize 0 (0 bytes)
DeletedFiles 1
DeletedFileSize 0 (0 bytes)
ChangedFiles 2
ChangedSourceSize 0 (0 bytes)
ChangedMirrorSize 0 (0 bytes)
IncrementFiles 4
IncrementFileSize 64 (64 bytes)
TotalDestinationSizeChange 64 (64 bytes)
Errors 0
--------------------------------------------------

Эту же информацию можно найти в файле статистики с метками времени в специальном каталоге rdiff-backup-data в каталоге зеркала со следующим именем файла в качестве примера:

/mirror_dir/rdiff-backup-data/session_statistics.2016-11-01T16:46:26Z.data

В качестве альтернативы приращения могут быть перечислены в другом формате с помощью отдельной команды:

rdiff-backup --list-increments mirror_dir

Какие выводы:

Found 43 increments:
    increments.2016-10-27T20:57:01+01:00.dir   Thu Oct 27 20:57:01 2016
    increments.2016-10-27T23:57:01+01:00.dir   Thu Oct 27 23:57:01 2016
    increments.2016-10-28T02:57:01+01:00.dir   Fri Oct 28 02:57:01 2016
    increments.2016-10-28T05:57:01+01:00.dir   Fri Oct 28 05:57:01 2016
    increments.2016-10-28T08:57:01+01:00.dir   Fri Oct 28 08:57:01 2016
    increments.2016-10-28T11:57:01+01:00.dir   Fri Oct 28 11:57:01 2016
...
    increments.2016-11-01T16:00:14Z.dir   Tue Nov  1 16:00:14 2016
Current mirror: Tue Nov  1 16:46:26 2016

Я не могу понять, должен ли я найти последний файл статистики сеанса и найти его для значения IncrementFiles или перенаправить вывод исходной команды с помощью --print-statistics или отдельно отфильтровывать число из первой строки --list-increments версия более разумная.

0 ответов

Другие вопросы по тегам