欲しいただ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/