rsyncを使用して変更されたファイルのみをコピーする

rsyncを使用して変更されたファイルのみをコピーする

今、次のコマンドがあります。

my_dir="$HOME/foo/bar";

rm -rf "$my_dir/WebstormProjects/";

rsync -r --exclude=".git" --exclude="node_modules" "$HOME/WebstormProjects/" "$my_dir/WebstormProjects/"

"$my_dir/WebstormProjects/"rsyncすべてを削除してからコピーするのではなく、ファイルが最新の場合にのみ上書きするのと同じ機能を使用したいと思います。だからこんな感じ:"$my_dir/WebstormProjects/""$HOME/WebstormProjects/"

my_dir="$HOME/foo/bar";

rsync -r --newer --exclude=".git" --exclude="node_modules" "$HOME/WebstormProjects/" "$my_dir/WebstormProjects/"

ターゲットファイルよりも最新のファイルのみコピーできますか?

私はいくつかの本を読みました: https://www.tecmint.com/sync-new-changed-modified-files-rsync-linux/

それは言う:

デフォルトでは、rsyncは新しいファイルまたは変更されたファイルのみをソースからターゲットにコピーします。

相対ファイルパスを比較してそれを行うとしますか?同じパス/名前を持つファイルは同じと見なされますか?

ベストアンサー1

これがrsyncのデフォルト動作です。ファイルサイズと最後の修正サイズを確認してください。

チェックサムを使用するには、-cまたは--checksumオプションを使用します(同じ効果)。マンページは次のとおりですここ興味を持つことができるオプションについて説明します。--size-only

おすすめ記事