Como posso contar com segurança o número de incrementos em um diretório rdiff-backup?

1

O utilitário rdiff-backup é usado para criar um espelho incremental de uma árvore de diretórios. Gostaria de descobrir o número de incrementos atualmente salvos e salvar apenas esse número em um valor variável. Eu estou fazendo isso de dentro de um script bash, e ainda preciso ter acesso ao código de retorno do comando rdiff-backup quando ele for concluído.

O comando pode ser executado para gerar algumas estatísticas:

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

O que dá:

--------------[ 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
--------------------------------------------------

As mesmas informações podem ser encontradas em um arquivo de estatísticas com registro de data e hora em um diretório especial rdiff-backup-data dentro do diretório espelho, com o seguinte nome de arquivo como exemplo:

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

Alternativamente, incrementos podem ser listados em um formato diferente usando um comando separado:

rdiff-backup --list-increments mirror_dir

Quais resultados:

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

Não consigo descobrir se devo encontrar o arquivo de estatísticas de sessão mais recente e aplicá-lo ao valor do campo IncrementFiles ou desviar a saída do comando original com a opção --print-statistics ou se filtrar separadamente o número da primeira linha da versão --list-increments é mais sensível.

    
por Arronical 01.11.2016 / 18:07

0 respostas