나는 그것을 원한다오직OSX에서 명령줄 도구를 사용하여 단일 디렉터리의 차등 백업(Continuous Integration Service에서 실행)
기본적으로 나는 물건(파일과 하위 디렉터리가 있는 파일과 하위 디렉터리 등)으로 가득 찬 디렉터리와 해당 디렉터리에 더 많은 물건을 추가하는 작업을 가지고 있습니다. 작업이 완료된 후 작업으로 추가된 모든 새 파일을 추출하고 싶습니다. (이 작업은 brew
몇 가지 추가 소프트웨어를 설치하는 것 입니다 /usr/local
. 모든 소프트웨어를 추출하고 싶습니다.추가의설치된 소프트웨어).
Linux에서는 다음과 같은 것을 사용합니다 GNU-tar
.
tar --create --file /dev/null --listed-incremental=data.snar ${BACKUPDIR}
# run the job
...
tar -cz --file backup.tgz --listed-incremental=data.snar ${BACKUPDIR}
불행히도 이것은 OSX에 있으므로 BSD-tar
누락된 --listed-incremental
플래그만 있습니다.
rsync
또한 , 를 사용하는 것도 고려했습니다 . 예를 들면 다음과 같습니다.
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/
그러나 이는 내가 예상한 대로 수행되지 않는 것 같습니다. 작업이 파일을 삭제하면 해당 파일은 지정된 디렉토리에 있지만 --backup-dir
표시되지 않습니다.오직작업에 추가된 파일...
정말 해결책을 원해요아니요설치를 요청하세요어느/usr/local/
추가 소프트웨어(GNU-tar 포함)는 차이점을 얻으려는 실제 데이터 디렉토리( )를 방해할 가능성이 높습니다 .
답변1
macOS에서 GNU tar를 사용합니다. 동일한 소스를 기반으로 합니다. http://macappstore.org/gnu-tar/