rsyncがcmdlineのdirsで指定されたディレクトリにシンボリックリンクをコピーし、コピーされたツリーのすべてのシンボリックリンクをそのままにしたいのですfind -H
が、唯一の方法は不快なハッキングです。
rsync -aR --rsync-path='cd /sender/parent/dir/of/tree; rsync' symlinkeddir/ target
問題は、これがこのパスセットにのみ適用されるrsyncバックアップスクリプトで例外になるため、目的の操作をrsync
実行するために同じコマンド(またはより厳密にはONE)を使用できないことです。find -H
- 同様の行動は大丈夫でしょう。 :/
ベストアンサー1
somelink
ディレクトリへのシンボリックリンクsomedir
の場合
rsync -a somelink/. target/
somedir
内容をにコピーしますtarget
。
ソースコードに相対シンボリックリンクのみが残っている場合は、次のものを使用できます。
rsync -a --copy-unsafe-links somelink target/
ターゲット内のシンボリックリンクパスを保存したい場合は、rsyncだけでは目的の操作を実行できないと思います。一部のシェルコードでrsyncを使用してこれを行うことができます。ソースを繰り返し、ターゲットサブディレクトリを明示的に指定します。
mkdir -p target/somelink
rsync -a somelink/. target/somelink