私はrsyncを使用していますrsync $source $destination
。修正時間に基づいて再同期する方法は?ファイルサイズのオプションは表示されますが、--size-only
変更時間は表示されませんか?
答え1
あなたの質問を正しく理解していますか? 「修正時間」rsync
は、レプリカを更新する必要があるかどうかを決定する基本基準の1つです。
~からman rsync
Rsyncは、サイズまたは最後の変更時間が変更されたファイルを検索する「クイックチェック」アルゴリズム(デフォルト)を使用して、転送する必要があるファイルを見つけます。クイックスキャン結果ファイルのデータを更新する必要がないことが表示された場合は、他の保持された属性(オプションで要求されているように)に対するすべての変更がターゲットファイルに直接適用されます。
答え2
最も簡単な方法は、次のコマンドを実行することです。
rsync -an /path/to/source /path/to/destination
次に、必要なファイルのみが転送されていることを確認してください。これを確認した後、-n
フラグなしで上記のコマンドを実行すると、目標を達成できます。ユーザーroaimaが指摘したように、目標を達成するための別のフラグがあります-t
。このフラグを使用することは、使用に関するすべての情報を読むのと-a
同じです -rlptgoD
。rsync
ここ。
別の方法は、次のコマンドを使用することです。この回答:
find /path/to/source -file -mtime +3 -exec rsync {} /path/to/destination \;
したがって、これを使用して、find
特定の日付の3日前に変更された日付を含む$SOURCE
すべてのファイルを見つけることができます。-mtime +3
希望の日数に変更できます。提供されたすべてのファイルを識別したら、必要なオプションを使用$SOURCE
して。rsync
$DESTINATION