回答:
はい、-i
フラグをチェックしてください。すべての操作のレポートを暗号形式で提供します。形式の正確な定義については、manページを参照してください。
リモートホストに送信されるファイルのリストを取得するには、次を使用できます。
rsync <options> -i <src> <dst> | grep '^<' | awk '{ print $2 }'
<fcstpoguax filename
さまざまなフラグが更新の必要性を示す理由として)。すべてのファイルを報告する場合、テストまたは環境に問題がある可能性があります。
<f..T......
です。マンページによると、これはタイムスタンプに関連しています。
grep -E '^[^.]|^$'
だけ...ドットで始まる本当に退屈な行を削除、また統計を聞かせ(または警告、エラー、...)ラインを通じて
単一のrsyncは、-v
実際には転送されたファイルのみを印刷します。毎回完全なリストを取得している場合は、おそらく、変更時間+サイズに基づくデフォルトのrsync src / dest比較アルゴリズムがあなたのケースに適していないことを意味します。-c
(--checksum
)フラグを追加して、rsyncがチェックサムによってファイルを比較できるようにします。これは明らかにいくらかのI / Oオーバーヘッドを招くことに注意してください。
少し関連するのは、--info=flist
代わりに使用する場合-v
、ファイルのよりトリミングされた出力が得られるという事実です(基本的な-v
出力のヘッダーとフッターを基本的にスキップします)。
--info=flist
rsync> = 3.1でのみ利用可能で、どこでも利用できるわけではありません。たとえば、Rsync v3はGPL 3よりも
-i
オプションを使用これらのアイコン化された(または:不可解な)変更フラグ。出力は次のようになります。
*deleting DSC00012 (copy).JPG
.d..tp..... ./
.f...p..... DSC00011.JPG
>f+++++++++ DSC00012 (copy2).JPG
>f.stp..... DSC00012.JPG
.f...p..... DSC00014.JPG
Number of files: 5 (reg: 4, dir: 1)
Number of created files: 1 (reg: 1)
... more statistic stuff
sent 636.01K bytes received 4.63K bytes 1.28M bytes/sec
total size is 2.84M speedup is 4.44
他のすべての行(読みやすくするために空白の行も)を通過させます。
rsync -arz -i --stats -h ... /mnt/FooDrive/ /mnt/backup | grep -E '^[^.]|^$'
そして、ここにあります:-) —医師が注文したもの:
*deleting DSC00012 (copy2).JPG
>f.stp..... DSC00011.JPG
>f+++++++++ DSC00012 (copy).JPG
Number of files: 5 (reg: 4, dir: 1)
Number of created files: 1 (reg: 1)
...
狩りをするので >
はなく点を避けることは、統計だけでなく潜在的なエラー、警告なども通過させるという利点があります...
最後に統計情報を持つことは個人的な好みです。-h --stats
これらが気に入らない場合は使用しないでください。あなたの主な関心は、何百または何千もの未変更のファイルがスクロールするのを見ないことにあると思います
これを行うフラグはないと思いますが、今はあるかもしれません。ここに私がやった方法がありました:
rsync -vv [other options] | grep -v 'uptodate'
uptodate
レポートに追加されないため、フィルターで除外することはできません。