両方のディレクトリ間で同じファイルを見つけて置き換える

両方のディレクトリ間で同じファイルを見つけて置き換える

で、そのファイル名がdir1同じすべてのファイルを見つけて 。dir2dir2

たとえば、

dir1: first.txt second.txt
dir2: third.txt first.txt

だからdir1古いファイルを削除first.txtします。first.txtdir2

Bash端末を使用してこれをどのように達成できますか?

ベストアンサー1

実際には、目的のタスクを正確に実行するコマンドがあります。

rsync -av --existing dir2/ dir1/

ファイルがdir1にすでに存在する場合にのみ、dir2からdir1にファイルを繰り返しコピーします。

これらの-avオプションは、rsyncを使用してファイルをコピーするために通常使用されるオプションです。

この--existingオプションは、rsyncシンクで新しいファイル生成をスキップするように指示します。

rsyncほとんどのコマンドでは、スラッシュはrsyncとは異なる動作をするため、コマンドラインのdir2 /に末尾のスラッシュを追加する必要があります。

rsyncと同様に、Web経由でも使用できますscp

rsyncさまざまな種類のファイルの同期、更新、およびバックアップ操作を処理できます。

おすすめ記事