extrai alterações incrementais no diretório

3

Gostaria de obter somente o backup diferencial de um único diretório, usando as ferramentas cmdline no OSX (para ser executado em um serviço de Integração Contínua)

Basicamente, eu tenho um diretório cheio de coisas (arquivos e subdiretórios com arquivos e subdiretórios, ...) e um trabalho que está adicionando mais coisas a este diretório. Quando o trabalho estiver concluído, gostaria de extrair todos os novos arquivos adicionados pelo trabalho. (O trabalho é brew instalando algum software adicional para /usr/local ; gostaria de extrair todo o software adicional instalado).

No linux, eu usaria GNU-tar com algo assim:

 tar --create --file /dev/null --listed-incremental=data.snar ${BACKUPDIR}
 # run the job
 ...
 tar -cz --file backup.tgz --listed-incremental=data.snar ${BACKUPDIR}

Infelizmente, isso está no OSX, portanto, só tenho BSD-tar , que não tem o sinal --listed-incremental .

Eu também pensei em usar rsync , com algo como:

rsync --delete --backup --backup-dir=backup.0 -a ${BACKUPDIR} /tmp/backup/
# run the job
...
rsync --delete --backup --backup-dir=backup.1 -a ${BACKUPDIR} /tmp/backup/

No entanto, isso parece não fazer o que eu esperava: se o trabalho excluir arquivos, eles ficarão no diretório especificado com --backup-dir , mas eu nunca ver somente os arquivos adicionados pelo trabalho ...

Eu realmente gostaria de ter uma solução que não requer que eu instale qualquer software adicional (incluindo o GNU-tar), já que isso provavelmente interfere no real. diretório de dados que eu gostaria de obter as diferenças para ( /usr/local/ ).

    
por umläute 29.11.2016 / 16:06

1 resposta

-2

Use o GNU tar no macosx. É baseado na mesma fonte. link

    
por 29.11.2016 / 16:14