よく!

よく!

現在、2つのフォルダ間で変更されたファイルをコピーしようとしていますが、違いがあるファイルをそのnewフォルダにコピーしたいと思います。

フォルダ構造は次のとおりです。

..
|-- update+old
|   |-- new
|   `-- pt
|       `-- abc
`-- web
    `-- abc

簡単な説明:

update+old/new- 新しいファイルがある場所(--compare-dest)
update+old/pt/abc- 元のファイル(ターゲット)
web/abc- 変更したファイル(ソース)

私は次のコマンドを実行しています。

rsync -av "$PWD/web/abc/" "$PWD/update+old/pt/abc/" --compare-dest="$PWD/update+old/new/"

スキップしてnewすぐにすべての変更を適用して、完全にupdate+old/pt/abc/空白update+old/new/のままにします。

--dry-run()を試しましたが、-n情報は提供しません。 (update+old/new/なかったと言いましたね)

私が何か間違っているのでしょうか、それとも議論の目的を誤解していますか--compare-dest=


必要に応じて、rsync --versionDebian 8.6で実行される出力は次のとおりです。

root@webtest:/var/www/c1s.int# rsync --version
rsync  version 3.1.1  protocol version 31
Copyright (C) 1996-2014 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes, prealloc

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.

これは数時間前に実行してインストールされましたapt-get install rsync

ベストアンサー1

よく!

ディレクトリは交換された

コマンドは次のようにする必要があります。

rsync -av "$PWD/web/abc/" "$PWD/update+old/new/" --compare-dest="$PWD/update+old/pt/abc/"

それでも目的の結果は得られませんが(すべてをコピーするだけです)、これは別の問題です。

おすすめ記事